jQuery自定义验证器方法在元素改变时被调用
jQuery custom validator method getting called whenever element changes
我有一个select,它是一个自定义验证器方法的目标。
验证器:
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();
}
});
不要把它当作一个验证器来做——这对你来说似乎毫无用处——只需在onSubmit中调用验证函数,并检查它的返回值
相关文章:
- Javascript(不是jquery)按钮点击,函数改变按钮类调用函数
- 在随后调用reloadData()时,角度数据表的有效载荷格式不会改变
- 为什么将变量的console.log()移动到第二个AJAX调用中会改变输出?
- 当改变一个类时,超过了最大调用栈大小
- 当单选按钮客户端检查改变时,使用JQuery调用函数
- 为什么我的画布对象在setInterval()被调用后不改变颜色?
- 如何调用函数一旦dom元素的样式改变Javascript/jquery
- AngularJS -当URL改变时不调用工厂
- Jquery在多个元素改变前调用函数
- 用jquery改变调用javascript函数变量
- 只有当变量(布尔值)改变时才调用javascript/jquery函数
- 指令在字段上调用setValidity(false),但是字段的有效性永远不会根据视图而改变
- 数据源查询回调问题(调用顺序,改变全局变量的能力)
- jQuery改变事件处理程序不调用引导单选按钮
- 在angularJS中调用ajax后改变视图
- 值在ajax调用之间不会改变
- Javascript调用改变类型
- Textarea在ajax调用中不会改变
- 改变HTML图像,函数似乎没有被调用
- 如何在作用域变量改变时继续调用函数