jquery - Add incremental data attr value based on class name -


i have <li>s class names follows;

<li class="2014" data-order=""></li> <li class="2014" data-order=""></li> <li class="2013" data-order=""></li> <li class="2013" data-order=""></li> <li class="2013" data-order=""></li> <li class="2012" data-order=""></li> 

i need jquery function add values each every <li> element's data-order. value has set follows.

<li class="2014" data-order="1"></li> <li class="2014" data-order="2"></li> <li class="2013" data-order="1"></li> <li class="2013" data-order="2"></li> <li class="2013" data-order="3"></li> <li class="2012" data-order="1"></li> <li class="2011" data-order="1"></li> 

data-order start one. when multiple <li> having same class, data-order start incrementing 1.

demo

var $ord = $('[data-order]');  $ord.each(function(){   var $ordsib = $('.'+ this.classname );   return $(this).data('order', $ordsib.index(this)+1 ); });  

using .index( ) method jquery elements array collection return index position of element. index '0' based need increment 1


Comments

Popular posts from this blog

css - I want to align grid in center -

Contact Form PHP Email Script -

python - SWIG function not printing output -