jquery更新第n个元素后的所有元素?

时间:2012-03-22 16:03:15

标签: jquery css

假设我有以下代码:

<ul>
    <li data-val="1">1</li>
    <li data-val="4">2</li>
    <li data-val="2">3</li>
    <li data-val="5">4</li>
    <li data-val="1">5</li>
</ul>

我希望ul li:gt(0)的所有项目的innerHTML总和为data-val + innerHTML。所以我想要的结果是:

<ul>
    <li data-val="1">1</li>
    <li data-val="4">6</li>
    <li data-val="2">5</li>
    <li data-val="5">9</li>
    <li data-val="1">6</li>
</ul>

我可以使用for循环来执行此操作,但不确定这是否是性能方面和最简单详细代码方面的最佳方式。还有更好的方法吗?

我可以使用jquery和css。

1 个答案:

答案 0 :(得分:2)

您可以调用.html()并传递一个对两个字段求和的函数:

$('ul li:gt(0)').html(function() {        
    return $(this).data('val') + parseInt($(this).html());
});​

http://jsfiddle.net/infernalbadger/VJAza/

相关问题