我可以只从一个点击事件中选择一个索引项吗?

时间:2015-02-24 14:25:55

标签: jquery events onclick target targeting

我在编辑和删除所选条目时遇到问题。我认为我只得到一个指数。

我如何选择:

$("#liste").click(function selectList (event) {
        var target = $( event.target );
        if ( target.is( "li" ) ) {
            target.toggleClass('selected');
        }
    });

问题在于:

$('.selected').attr("index");

我只从所选项目中获取第一个索引,但我想拥有每个所选项目的所有索引。对于问题,请查看此I have a Special Idea about an Edit function或随意提问!

1 个答案:

答案 0 :(得分:1)

正如您所说,

attr()将从匹配集中的第一个元素返回该属性。如果您想要所选对象中的所有index属性,请使用map()

var indices = $('.selected').map( 
  function() {
    return $(this).attr('index');
  }
);



var indices = $('.selected').map(function() {
  return $(this).attr('index');
});

console.log(indices);

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="selected" index="one"></div>
<div class="selected" index="two"></div>
<div index="three"></div>
<div class="selected" index="four"></div>
<div index="five"></div>
&#13;
&#13;
&#13;