【问题标题】:jQuery Validate onclick: false not working for checkbox or selectjQuery Validate onclick: false 不适用于复选框或选择
【发布时间】:2012-09-08 03:56:03
【问题描述】:

我正在尝试禁用验证,直到发生错误后提交。 onfocusout 处理程序工作正常,但 onclick 不适用于复选框或选择元素。

我写了以下内容作为一个简单的例子。如果您提交空白表格,然后更正复选框并选择,则它们不应立即验证。您会看到文本输入工作正常。

无论 onclick 处理程序如何,选择似乎有时都有效。它确实在 safari 中验证了 onclick,但在 chrome 中没有。

小提琴:http://jsfiddle.net/ebMdq/6/

<form id="myForm" action="">
Name: <input type="text" name="fname" /><br />
Do you Rawk? <input type="checkbox" name="rock" /><br /> 
choose color: <select id="color" name="color" class="required">
<option value="">Choose One</option>
<option value="blue">blue</option>
<option value="blue">red</option>
</select><br />
<input type="submit" />
</form>​

$(function () {
var validator = $("#myForm").validate({ 
             onfocusout: false,
             onkeyup: false,
             onlclick: false,
             rules: { 
                 fname: "required", 
                 rock: "required",
                 color: "required"
                }, 
             messages: { 
                 fname: "Enter your firstname", 
                 rock: "you know you do",
                 color: "pick one!",
             }, 
         });
});

【问题讨论】:

  • 这个小提琴有问题吗? jsfiddle.net/jUDEk? (PS,onclick 仍然拼写不正确)
  • 不,它没有,但是如何?
  • 里面没有错字:)
  • 显然我今天的 14 小时对我解决问题的能力并不好。很抱歉浪费你的时间。谢谢

标签: jquery validation jquery-plugins jquery-validate


【解决方案1】:

选择、单选和复选框在不同浏览器中的事件行为不一致。

change 或 onchange 事件用于单选框/复选框。

【讨论】:

    猜你喜欢
    • 2015-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-03
    • 2022-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多