确定元素是否存在

时间:2012-09-03 20:09:44

标签: javascript jquery html5 jquery-mobile

  

可能重复:
  Check that element is in DOM or not with jQuery?

所以我有一个函数,用于使用.parent().parent()向上导航两个级别,然后使用.next()移动到文档中的下一个节点,最后从嵌套的a中获取我需要的属性使用.find('a').attr('data-record-id'),这一切都很好,但现在我需要找到<a></a>元素是否存在,如果不存在,我需要隐藏与之相关的标题。布局的模型如下:

<html>
    <head><title>My Title</title></head>
    <body>
        <h4 class="dragable">2012-08-20<span style='display: none'><a class='delete-btn'></a></span></h4>
        <ul>
           <li>
             <div>
                 <div>
                    <a data-record-id="9">97 bpm</a>
                 </div>
              </div>
           </li>
         </ul>
      </body>
  </html>

所以考虑到布局是确定<a></a>元素是否出口的最佳方法,如果没有,则隐藏/删除与之相关的h4类。

3 个答案:

答案 0 :(得分:2)

使用length

if($next.find('a').length > 0)

答案 1 :(得分:2)

无论是否存在,

$(selector).find('a')都会返回一个数组。您可以使用$(select).find('a').length (or .size() )轻松进行测试。这有多大帮助。

答案 2 :(得分:1)

您可以使用length属性来确定元素是否存在:

if ($(body).find('a[data-record-id]').length) {
    // element exists
} else {
    // element does not exist
}