HTML:
<tr>
<td class="last_msg" id="408"><a href="/index/408" id="408">
<div id="div408" class="msg-div">
<div class="msg-actions">
<div id="unr_msg408" class="msg-unread"></div>
</div>
<div style="margin-top:14px; margin-bottom: 14px; line-height: 21px;">
<span class="msg-sender-name">Name</span>
<span class="msg-date">Date</span><br>
</div>
</div>
</a>
<span class="msg_dlt_icon"><img id="dlt408" src="/public/images/icon-delete-blue.png" class="msg_icon_dlt" onclick="return deleteMessage()"></span>
</td>
</tr>
При нажатии на span с классом msg_dlt_icon
мне нужно проверить, имеет ли div с классом msg-actions
<div id="unr_msg408" class="msg-unread"></div>
div <div id="unr_msg408" class="msg-unread"></div>
.
Я попробовал нижнюю строку,
var unread =$(this).closest("tr").find('.msg-actions').hasClass('.msg-unread');
Я предупредил непрочитанную переменную, она всегда возвращает false.
Я хочу найти, есть ли <div id="unr_msg408" class="msg-unread"></div>
внутри <div class="msg-actions">
.
Можно ли это сделать.
Поэтому вам нужно сначала найти детей из .msg-actions
, а затем проверить, есть ли у него класс msg-unread
.
var unread =$(this).closest("tr").find('.msg-actions > div ').hasClass('msg-unread');
вы можете использовать
var unread = $(this).closest('tr').find('.msg-actions .msg-unread').length;
Эта
.hasClass('.msg-unread')
это неверно. hasClass
уже предполагает, что вы ищете класс CSS. Вы пытаетесь рассматривать его как вызов типа $('.msg-unread')
. Ваш hasClass()
сообщает jquery буквально искать элемент, который выглядит как
<foo class=".msg-unread">
^---note this .
Вызов должен быть просто
.hasClass('msg-unread')
БЕЗ .
,