0
我有一个select是自定义验证器方法的目标。每当元素发生变化时调用jQuery自定义验证器方法
验证:
var validator = $("#myform").validate({
rules : {
source: "source_selected",
},
messages : {
},
errorLabelContainer: $("#error_container ul"),
errorContainer: $("#error_container"),
wrapper : "li"
});
自定义的验证方法:
$.validator.addMethod("source_selected", function(value, element) {
var source_id = $(element).selectedValues();
if(source_id == 0) {
return false;
}
return true;
}, "Please a select a source to Copy subscriptions from.");
选择:
<select name="source" id="source">
<option value="0">-- Choose --</option>
<? foreach($managers as $id => $name) { ?>
<option value="<?=$id?>"><?=$name?></option>
<? } ?>
</select>
每次我更改选择source_selected函数被调用的选项。如果我在那里发出警报,每次点击选择框(类似于.blur),都会触发警报。我希望只有在提交按钮被调用时才会调用它。
提交单击事件:
$("#submit_button").click(function() {
var valid = validator.form();
if (valid) {
document.myform.submit();
}
});
任何想法是极大的赞赏。
这不是一个坏主意。我仍然很好奇为什么这是失败的,因为我使用这种模式到处都是。我的整个网站上大约有十个表单,这样证实了这一点,这是唯一一个表现得很有趣的表单。 – akronymn