0

jQuery 1.7.1 - 我有一个输入文本元素数组(类 - pr)和相同数量的标签数组元素(类 - err)。我对文本框的模糊进行了一些验证,并希望将错误消息分配给与文本框关联的标签。以下 jQuery 代码不起作用。

HTML

<tr>
   <td>
            <label class="err" style="display: none;" for="prd"></label> 
            <input type="text" class="pr" name="prd" />
    </td>
 </tr>

jQuery

$("input.pr:text").blur(function(event){
    // .... validation code
    var index = $.inArray(this, $("input.pr:text"));
    $("label.err")[index].show();
    $("label.err")[index].text("Enter a number");
 });
4

2 回答 2

2

一个班轮:

$('label.err').eq(index).show().text('Enter a number');

或者可能更好:

$("input.pr:text").blur(function(event){
     $(this).prev('label').show().text("Enter a number");
});
于 2012-05-17T04:42:31.003 回答
1

一旦你使用索引引用了一个 JQuery 对象,它就不再是一个 JQuery 对象而是一个普通的 DOM 元素。请改用以下内容:

var el = $($("label.err")[index]);
el.show();
el.text("Enter a number");
于 2012-05-17T04:38:05.540 回答