【问题标题】:How to get elements of lis inside an ul如何在 ul 中获取 lis 的元素
【发布时间】:2018-02-22 16:25:06
【问题描述】:

大家好,我正在尝试获取 <li> 的 id,但我无法定义,我正在使用 laravel。

这是我的看法

<ul class="nav nav-pills nav-stacked" id="listas">
                        @foreach(Auth::user()->empresas as $empresa)
                            <li>
                                <a href="#" class="seleccion" id="{{$empresa->id}}" data-id="{{$empresa->id}}"
                                   data-nombre="{{$empresa->nombre}}">{{$empresa->nombre}}
                                    <span class="pull-right text-red item{{$empresa->id}}"></span></a>
                            </li>
                        @endforeach

 </ul>

我的js

   $(document).on('click', '.seleccion', function () {
    $('#listas').find('li').each(function () {
      console.log($(this).attr('id'))
    })
  })

【问题讨论】:

  • 你的lis 没有 id
  • 你的li没有id属性。
  • 这是我在检查器中得到的,我确实得到了 id 和我需要的所有信息 Mariana
  • @Christian 是的,但它们不在li 中,它们在a 中。请参阅下面的答案。
  • 我刚刚意识到id在中,谢谢

标签: javascript jquery laravel loops each


【解决方案1】:

由于您的lis 实际上没有id 属性,因此您应该在lis 的a 子项中查找它,如下所示。

$(document).on('click', '.seleccion', function () {
    $('#listas').find('li > a').each(function () {
        console.log($(this).attr('id'));
    });
});

【讨论】:

    【解决方案2】:

    您尝试从 &lt;li&gt; 元素中读取不存在的属性。

    @foreach(Auth::user()->empresas as $empresa)
      <li id="myId">  <--- HERE
        <a href="#" class="seleccion" id="{{$empresa->id}}" data-id="{{$empresa->id}}"
         data-nombre="{{$empresa->nombre}}">{{$empresa->nombre}}
           <span class="pull-right text-red item{{$empresa->id}}"></span>
        </a>            
      </li>
    @endforeach
    

    问候

    【讨论】:

      【解决方案3】:

      像 li 没有 id 你必须改变你的标记或改变 js

        $(document).on('click', 'a.seleccion', function () {
            console.log($(this).attr('id'));
        });
      

      【讨论】:

      • 嗯...不是真的。他们试图在父 ul 中的所有 lis 上循环。
      【解决方案4】:

      你可以使用 $(this)

       $( ".seleccion" ).click(function() {
              var id = $(this).attr('data-id'));
              console.log(id);
       });
      

      【讨论】:

      • 嗯...不是真的。他们试图在父 ul 中的所有 lis 上循环。
      猜你喜欢
      • 2011-08-26
      • 2022-12-05
      • 1970-01-01
      • 2015-12-06
      • 1970-01-01
      • 1970-01-01
      • 2016-01-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多