簡體   English   中英

從每個ul獲取第一個li元素的文本

[英]get text of the first li element from every ul

我有很多<ul>列表,並嘗試從列表的第一個li中獲取文本。

標記很簡單,例如:

<ul>
   <li>abc</li>
   <li>def</li>
   <li>ghi</li>
</ul> 

等等。

我的jQuery嘗試是:

    var elems = $('ul'); // returns a nodeList
    var arr = jQuery.makeArray(elems);
    arr.reverse(); // use an Array method on list of dom elements

    for( var i=0;  i < elems.length; i++) {
        console.log($(this).find('li:lt(1)').text());
    }

但是我在$(this).for循環中有一個錯誤$(this). 如果我不使用$(this).我不知道如何獲取ul數字1或3的第一個文本$(this).

那么如何正確地將其指向for循環呢?

.each會給你this

$('ul').each(function() {
     console.log($(this).find('li').eq(0).text());
})

使用:first而不是:eq(0)替代語法

  $('ul').each(function() {
     console.log($(this).find('li:first').text());
  });

或者,放棄find()函數。

 $('ul').each(function() {
    console.log( $('li:first', this).text() );
 });

您還可以使用:

$("li:nth-child(1)").each(function() 
                              {
                                console.log($(this).text());
                              });

筆記:

  • 使用:nth-child(n) ,將計算所有子項,無論它們是什么。

  • 使用:nth-child(n) ,n從1開始(第一個索引是1而不是0)

暫無
暫無

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

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