jquery验证 - 尝试验证单选按钮和复选框按钮,并使用ErrorPlacement在每个组下方显示错误

时间:2011-09-28 05:54:38

标签: jquery forms jquery-validate

新手在这里 我试图让单选按钮和复选框按钮进行验证。

错误消息应出现在最后一组的radio / checkbox

下面

单选按钮需要选择 检查按钮需要一个选定的最小值

---在媒体上,由于所有人都有一个独特的身份证我将其视为一个群体,但我迷失了 addMethod来验证组。

---同样在errorPlacement上,如果我没有Element ID,该怎么办?

http://jsbin.com/aqekah/14

大部分都可以,但现在我在警报中得到错误的InValids数量

1 个答案:

答案 0 :(得分:2)

实际上我们实际上已经出现了这个问题,这就是我解决问题的方法:

var validator = $('form#yourID').validate({
        errorPlacement: function (error, element) {
            if (element.is(":radio")) {
                element.closest('.rbl').after(error);
                element.closest('.rbl').addClass('error');
            }
            else if (element.is(":checkbox")) {
                element.closest('.cbl').after(error);
                element.closest('.cbl').addClass('error');
            }
            else { // This is the default behavior of the script
                error.insertAfter(element);
            }
        },
        rules: { ...

其中.rbl<table>标记,使用以下css看起来像这样:

<table cellpadding="0" cellspacing="0" class="rbl">
<tr><td><label><input type="radio" name="myradio" value="1"> Radio 1</label></td></tr>
<tr><td><label><input type="radio" name="myradio" value="2"> Radio 2</label></td></tr>
</table>

的CSS:

FORM .rbl
{
    float: left;
}
FORM .rbl TD
{
    padding: 4px 24px 0 0;
}

同样适用于.cbl的复选框列表。所有其他非收音机和复选框类型都将使用标准错误放置。

希望有所帮助。