我的Javascript代码无法正常工作

时间:2014-10-14 09:40:56

标签: javascript jquery

我正在创建一个简单的函数,它增加数字并与多个表绑定为 S.NO。。我不明白我的代码有什么问题。

    function _IncrementNumber(id) {
        var table = document.getElementById(id);
        var rowCount = table.rows.length;
        for (var i = 0; i < rowCount; i++) {
            table.rows[i + 1].cells[0].innerHTML = (i + 1);
        }
    }
$(document).ready(function () {
    _IncrementNumber("FirstTable");
    _IncrementNumber("SecondTable");
});

DEMO 请指导我。

3 个答案:

答案 0 :(得分:3)

您正在访问 i + 1 而不是 i 在最后一次迭代中 - &gt;你会走出界限。

function _IncrementNumber(id) {
        var table = document.getElementById(id);
        var rowCount = table.rows.length;
        for (var i = 0; i < rowCount; i++) {
            table.rows[i].cells[0].innerHTML = (i + 1);
        }
}
$(document).ready(function () {
    _IncrementNumber("FirstTable");
    _IncrementNumber("SecondTable");
});

答案 1 :(得分:0)

您正在尝试访问不存在的行。

您应该从i = 1开始,而不是跳过标题行

for (var i = 1; i < rowCount; i++) {
    table.rows[i].cells[0].innerHTML = (i);
}

答案 2 :(得分:0)

这一行的错误是个问题。表行从0索引开始。所以不需要将行索引更改增加到此table.rows[i].cells[0].innerHTML = (i + 1);