我需要找到一个具有相同类的属性,为此我使用一个循环,例如:
for(var i = 0; i < $('.chat-to').length; ++i)
if($('.chat-to')[i].prop('id') == receiverID)
return;
但在运行时if语句抛出错误
Uncaught TypeError: undefined is not a function
虽然当我在控制台中使用此代码$('.chat-to')[i]
对其进行测试时,它会显示整个标记,但我需要知道原因吗?感谢。
答案 0 :(得分:3)
$('.chat-to')[i]
返回DOM元素,而不是jQuery对象。您需要使用.eq()
来获取jQuery对象。
for(var i = 0; i < $('.chat-to').length; ++i)
if($('.chat-to').eq(i).prop('id') == receiverID)
return;
或者,您可以使用计划DOM获取ID的方式:
for(var i = 0; i < $('.chat-to').length; ++i)
if($('.chat-to')[i].id == receiverID)
return;
答案 1 :(得分:0)
我用这个技巧解决了这个问题:
for(var i = 0; i < $('.chat-to').length; ++i) {
var temp = $('.chat-to')[i];
if ($(temp).prop('id') == receiverID)
return;
}