如何解决如何使jQuery Validate触发选择菜单的“成功”方法“ onchange”而不是“ onblur”?
| 我正在使用jQuery validate插件。一旦页面上没有错误,我将使用show()
方法显示提交按钮。
我有一个只有一个选择/下拉菜单的表单。我遇到的问题是,当我在select中选择一个选项时,直到我单击页面上的其他位置时,它才显示提交按钮,而当我选择一个有效选项时,它应该立即显示它。
有谁知道如何射击fire1fire2ѭ或onkeyup
而不是onblur
?
这是我正在做的基本示例:
$form.validate( {
rules: {
favoriteSport: {
required: true
}
},messages: {
favoriteSport: \"This is required\"
},success: function() {
console.log(\"yay,it was valid!\");
$(\"#submit\").show();
}
});
解决方法
最后,我向bind()添加了一个单独的调用,因此,每当发生更改事件时,它都会运行$ validate()再选择菜单的ID。
很难相信它不是内置在插件中的,因为它是jQuery中最流行的表单验证插件。
这是一个例子:
$(\"#favoriteSport\").bind(\"change keyup\",function() {
$form.validate().element(\"#favoriteSport\");
});
,试试这个.change()
而不是.blur()
....
$(\"#idofSelect\").change(function(){
$(\"#submitButtonID\").show()
})
,提出此问题已有很长时间了,我仍然不相信插件开发人员已经提供了针对此问题的本地修复程序。 @Cofey,您的工作方向正确,我认为对答案逻辑的稍微改善将有助于使所有选择的解决方案动态化:
$(\'select\').bind(\'change keyup\',function() {
$(\'form\').validate().element(this);
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。