【问题标题】:Get the current <li> number获取当前的 <li> 编号
【发布时间】:2011-03-31 04:33:38
【问题描述】:

我有一个这样的列表:

<ul>

  <li>
    <a href="..."> ... </a>
    <a href="..."> ... </a>
  </li>

  <li>
    <a href="..."> ... </a>
    <a href="..."> ... </a>
  </li>

  <li>
    <a href="..."> ... </a>
    <a href="..."> ... </a>
  </li>

  ...

</ul>

和 jQuery:

$("li").each(function(){
     // do stuff
});

如何在该 jquery 函数中获取当前列表编号(如 1、2 或 3)(东西在哪里)?

【问题讨论】:

  • 看起来像个三重奏!!我打算发布我的答案,但看起来我需要快得多。

标签: javascript jquery list


【解决方案1】:

传递给each 的回调函数有两个参数,第一个是您要查找的索引:

$('li').each(function(index, value) {
  // index is what you're looking for
});

查看documentationeach

回调传递一个数组 索引和相应的数组值 每次。

请注意,索引将从零开始,因此如果您想要“1、2、3...”(来自您的问题),您需要做出适当的调整。

【讨论】:

    【解决方案2】:

    根据 jQuery 文档,您可以在函数中包含回调(如下所示):

    $('li').each(function(index, value) { 
      alert('li #' + index); 
    });
    

    【讨论】:

      【解决方案3】:

      jQuery 将其作为参数传递:

      $('li').each(i, li) {
        // i is the counter (starts at zero)
      });
      

      (等我确保这是正确的顺序;我总是很困惑 b/c "$.map()" is different!)

      是的,就是这样,索引然后元素。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-08-16
        • 2016-04-12
        • 2013-02-06
        • 2014-10-02
        • 1970-01-01
        • 1970-01-01
        • 2014-05-18
        • 2018-04-25
        相关资源
        最近更新 更多