在stackoverflow上写这个问题,如果电话和移动字段为空,那么它会给出一条错误消息,但之后当两者中的任何一个被填写并再次提交表单时,错误消息仍然存在。验证检查使用输入的旧值进行,当页面刷新时,它会采用新值。如果有人能帮我解决这个问题,我将不胜感激??
问问题
1232 次
2 回答
3
1)根据您链接的问题,我使用该选项构建了这个 jsFiddle,但仍然看到很多问题。这些规则似乎根本不起作用,这两个字段总是需要的。depends
2)文件require_from_group
中包含一个规则additional-methods.js
。这两个字段必须具有相同class
的规则才能定位,在这种情况下,.group
。但是这种方法有一些已知的错误,它会禁用表单上的所有其他规则
演示:http: //jsfiddle.net/SvSrR/
$(document).ready(function () {
$('#myform').validate({ // initialize the plugin
groups: {
name: "telephone mobile"
},
rules: {
telephone: {
require_from_group: [1, '.group']
},
mobile: {
require_from_group: [1, '.group']
}
}
});
});
3)相反,我构建了一个名为customrule
(您可以随意命名)的自定义规则,并且它按我认为应该的方式工作。我还使用了groups
将两条错误消息合并为一条的选项。
工作演示:http: //jsfiddle.net/2g8hL/
$(document).ready(function () {
$.validator.addMethod("customrule", function (value, element) {
return (!($("#mobile").val() === '') || !($("#telephone").val() === ''));
}, "please fill out at least one");
$('#myform').validate({ // initialize the plugin
groups: {
name: "telephone mobile"
},
rules: {
telephone: {
customrule: true
},
mobile: {
customrule: true
}
}
});
});
于 2013-03-08T17:11:31.350 回答
0
尝试放置自定义错误放置
$('#form').validate({
errorPlacement: function(error,element) {
return true;
}
});
于 2013-03-08T11:52:14.600 回答