jQuery验证布局问题

时间:2012-08-01 05:15:37

标签: jquery jquery-validate validation

我正在使用jQuery Validate来验证我的表单。我一直在对错误标签进行硬编码,并使用Validate来显示/隐藏标签。我一直在对它们进行硬编码,因为我需要覆盖jQuery Validate的默认样式以显示为" inline-block"不是"内联"。

我现在需要显示2个不同的错误消息,具体取决于验证状态," general"一个和一个"不得超过6个字符"一。它目前有效但第二条错误消息是生成的,没有正确设置样式,因此它会破坏布局。

是否有办法根据jQuery Validation选择的错误状态确定要显示哪个硬编码错误标签?

(PS:如果有人能告诉我如何覆盖生成的错误标签的样式,那也将解决我的问题)

我的硬编码标签如下所示:

<label for="registration" class="error" style="display:inline-block; margin:5px 0 0 130px;">Please enter valid registration</label>

我需要硬编码第二个但是找到一种方法来区分2,并且只在需要时显示:

<label for="registration" class="error" style="display:inline-block; margin:5px 0 0 130px;">Please enter no more than 6 characters</label>

1 个答案:

答案 0 :(得分:0)

我设法通过为该输入字段的错误类添加不同的类来解决此问题。通过这样做,它允许我将这些错误消息设置为与表单生成的其他错误消息不同。

JavaScript - 这会添加到您当前的验证功能

errorPlacement: function(error, element) {
     if(element.attr("id") == 'username'){ // match your element's id
          error.addClass("errorclass"); // add invalid class
          error.appendTo(element.parent()); // this line willchange depends on your form layout
     else{
          error.appendTo(element.parent()); // this line willchange depends on your form layout
          }