在jquery validate插件上重新定位错误消息

时间:2012-02-18 18:51:46

标签: javascript jquery html forms

如何在未选中任何内容时重新调整jQuery validate插件(http://bassistance.de/jquery-plugins/jquery-plugin-validation/)生成的错误消息。理想情况下,我希望将它放在复选框下面,而不是紧挨着它。这是代码:

<script> $(document).ready(function() {
    $("#form1").validate();
    $("#form2").validate({
        rules: {
            "option[]": {
                required: true,
                minlength: 1
            }
        }
    });
}); 
</script>
                  <form action="#" name="form2" id="form2">
<input type="checkbox" name="option[]" value="DataProject"/>
DataProject
</label>
<br />
<label>
  <input type="checkbox" name="option[]" value="DC control" />
  DC control</label>
<label><br />
  <input type="checkbox" name="option[]" value="Computher" />
  Computer</label>
<br />
<label>
  <input type="checkbox" name="option[]" value="OHP" />
  OHP</label>
<p> * Please check at least one

2 个答案:

答案 0 :(得分:0)

您可以尝试将<div>用作errorElement

$("#form2").validate({
    errorElement: 'div',
    rules: {
        "option[]": {
            required: true,
            minlength: 1
        }
    }
});​

答案 1 :(得分:0)

您也可以尝试设置默认值:

jQuery.validator.setDefaults({
    errorPlacement: function(error, element) {
        if(element.attr('name') == 'm2'){
            error.insertAfter('small#m2_desc');
            error.css('display', 'none');
            error.css('color', 'red');
            error.fadeIn();
        }
    }
});

对于html,如:

<div class="rowElem">
                            <label for"m2">M2 a limpar</label>
                            <input type="text" name="m2" value="'.$m2.'"/><br/>
                            <small id="m2_desc">mín: 100; máx: 10000</small>
                        </div>

这是我的一个项目的一个工作示例。