1

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

我现在需要根据验证状态显示 2 条不同的错误消息,一条是“一般”,一条是“不得超过 6 个字符”。它目前可以工作,但是会生成第二条错误消息并且样式不正确,因此会破坏布局。

有没有办法根据 jQuery Validation 拾取的错误状态来确定要显示哪个硬编码错误标签?

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

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

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

我需要对第二个进行硬编码,但要找到一种区分两者的方法,并且仅在必要时才显示:

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

1 回答 1

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
          }
于 2012-08-02T03:15:10.503 回答