簡體   English   中英

我怎樣才能找到<a>一個特定的類,當它在</a><li>

[英]How can i find if an <a> has a specific class when it is in an <li>

我有以下html:

<ul id="myList">
    <li>
        <a class="myListItem li-selected">One</a>
    </li>
    <li>
        <a class="myListItem">Two</a>
    </li>
    <li>
        <a class="myListItem li-selected">Three</a>
    </li>
    <li>
        <a class="myListItem">Four</a>
    </li>
    <li>
        <a class="myListItem">Five</a>
    </li>
</ul>

The li-selected class is added when the respective <li> tag is getting selected. 我試圖在$(document).ready()中檢查是否選擇了任何 li(具有li-selected類)。 因此,我希望每次頁面加載時都使用一個布爾值,將它作為參數傳遞給另一個函數。

我正在嘗試這樣的事情,但它不會返回true雖然它應該:

$(document).ready(function() {
        .
        .
        .
   var hasSelectedItems = $("#myList li").find("a").hasClass("li-selected");
   console.log(hasSelectedItems);
        .
        .
        .
});

預期結果:

  • hasSelectedItems === true那么至少一個 <li> 被選中。
  • hasSelectedItems === false那么沒有 <li> 被選中。

解決了

事實證明,我嘗試檢查li-selected類是否存在的方式沒有任何問題,但是當我嘗試這樣做時。 我放錯了var hasSelectedItems = $("#myList li").find("a").hasClass("li-selected"); 部分並試圖找到尚未添加的類。 因此,當添加li-selected類后重新渲染元素時,我將那部分代碼移動到運行,並且它可以工作。

請使用下面的jQuery代碼找到a標簽:

$(document).ready(function() {
    var lis = $("#myList li a.li-selected").length;
    if(lis > 0)
    {
     //code here
    }
    else
    {
     //empty
    }
});

您可以找到選擇了類 li 的錨元素的長度:

var lis = $("#myList li a.li-selected").length > 0 ;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM