我有一个像下面的结构
<div data-example="1"></div>
<div data-example="2"></div>
<div data-example="1"></div>
<div data-example="3"></div>
<div data-example="2"></div>
<div data-example="2"></div>
<div data-example="4"></div>
可以向此结构中添加其他div,并添加不同值的数据,例如4-5-6-9等。
我想获取具有相同数据示例attr的div索引,并将其添加为html元素。例如
<div data-example="1">Index is 0 for data 1</div>
<div data-example="2">Index is 0 for data 2</div>
<div data-example="1">Index is 1 for data 1</div>
<div data-example="3">Index is 0 for data 3</div>
<div data-example="2">Index is 1 for data 2</div>
<div data-example="2">Index is 2 for data 2</div>
<div data-example="4">Index is 0 for data 4</div>
详情
数据1的索引为0,这是第一个具有数据示例(值为1)的div,这是div中具有数据示例值为1的第一个div,其索引为0,第二个div具有数据示例= 2,得到索引1。
如何使用jquery动态获取索引。
您必须使用jQuery prevAll(),如下所示:-
$('div').each(function(){
var attr = $(this).attr('data-example');
if (typeof attr !== typeof undefined && attr !== false) {
var counter = $(this).prevAll('div[data-example='+$(this).data('example')+']').length;
$(this).text("Index is "+counter+" for data "+$(this).data('example'));
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-example="1"></div>
<div data-example="2"></div>
<div data-example="1"></div>
<div data-example="3"></div>
<div data-example="2"></div>
<div data-example="2"></div>
<div data-example="4"></div>
<div>Unchanged</div>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句