如何找到div有特定的类

时间:2014-05-05 14:43:50

标签: javascript jquery html css

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>

点击课程msg_dlt_icon的范围时,我需要检查课程msg-actions的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">

是否可以这样做。

3 个答案:

答案 0 :(得分:4)

所以你需要先找到.msg-actions的孩子,然后检查它是否有msg-unread类。

var unread =$(this).closest("tr").find('.msg-actions > div ').hasClass('msg-unread');

答案 1 :(得分:2)

你可以使用

var unread = $(this).closest('tr').find('.msg-actions .msg-unread').length;

答案 2 :(得分:2)

.hasClass('.msg-unread')

不正确。 hasClass已经暗示您正在寻找CSS类。您尝试将其视为$('.msg-unread')之类的通话。你的hasClass()告诉jquery从字面上寻找一个看起来像

的元素
<foo class=".msg-unread">
            ^---note this .

电话应该只是

.hasClass('msg-unread')

没有.