2

我正在使用 jQuery Validation Plugin 1.9.0 来验证我的样式表单。我测试过 IE7/8/9、Firefox、Safari、Chrome 和 Opera。一切正常,除了验证 Safari 和 Chrome 中的复选框。没有错误消息或阻止发布表单。有什么我可以做的吗,或者这是 Safari 和 Chrome 的问题?

复选框:

<label class="checkbox" for="joingroupkey_1">
    <input type="checkbox" class="checkbox hiddeninput" value="1" id="joingroupkey_1" name="joingroupkey">
    <div class="checkbox styled"></div>
    Newsletter 1
</label>
<label class="checkbox" for="joingroupkey_2">
    <input type="checkbox" class="checkbox hiddeninput" value="2" id="joingroupkey_2" name="joingroupkey">
    <div class="checkbox styled"></div>
    Newsletter 2
</label>
<label class="checkbox" for="joingroupkey_3">
    <input type="checkbox" class="checkbox hiddeninput" value="3" id="joingroupkey_3" name="joingroupkey">
    <div class="checkbox styled"></div>
    Newsletter 3
</label>

脚本:

$('#newsletter').validate({
    rules: {
        joingroupkey: {
            required: true,
            minlength: 1
        }
    },
    errorPlacement: function(label, element) {
        label.insertBefore(element);
    }
});
4

2 回答 2

3

最后,我在一行简单的 css 中找到了我的问题的答案:

输入,文本区域,选择 { -webkit 外观:无;-moz 外观:无;}

当我删除此行时,验证正在工作。

我不得不承认我不知道这对脚本有何影响,我必须从生成的 html 顶部开始,逐行逐行,直到找到导致问题的 css。

于 2012-08-19T20:31:11.853 回答
0

再添加一个 css 可以停止对 chrome 和 safari 中的复选框进行验证。(仍在 2018 年!!!)

width:0px;height:0px;
于 2018-06-22T07:24:38.417 回答