har*_*ang 6 asp.net-mvc remote-validation asp.net-mvc-4
我有一个启用了远程验证的视图模型.在我看来,我也禁用了OnKeyUp
$(function() {
$.validator.setDefaults({ onkeyup: false });
})
Run Code Online (Sandbox Code Playgroud)
但是,如果我专注于文本框,并将焦点移动到另一个控件,则根本不会触发远程验证.
当我将它配置为onBlur和空字符串时,有没有办法可以让远程验证触发?
小智 0
为此,您需要修改该jquery-validate.js文件。
与远程验证相关的代码:
remote: function(value, element, param) {
if ( this.optional(element) )
return "dependency-mismatch";
var previous = this.previousValue(element);
....
// ajax call
....
}
Run Code Online (Sandbox Code Playgroud)
第一个if块测试该元素是否是可选的,除非已将[Required]属性应用于该属性,或者该属性是值类型(我假设您的属性是 typeof string),所以该函数返回以及制作 ajax 的代码呼叫永远无法接通。请注意,即使您添加了该[Required]属性,该代码块也永远不会被调用,因为required:首先会进行验证,您只会收到“需要填写 XXX”消息。
如果您注释掉第一个if块,并使用空字符串进行聚焦,则将触发远程验证。
| 归档时间: |
|
| 查看次数: |
1142 次 |
| 最近记录: |