-1

我已经在以下链接中实现了 jQuery 克隆:

http://jsfiddle.net/sunalive/gqQnJ/5/

现在我希望每次添加(克隆)行时自动生成一个序列号(行号)。此外,当删除一行时(通过 DelRow 按钮),我需要对整个内容重新编号(这样当我们从中间删除一行时,序列中就不会丢失数字)。该数字必须显示在 lineNo 字段中。

谁能帮助我如何实现这一目标?

此外,我只需要从第一行隐藏“DelRow”按钮,这样所有行都不会被意外删除,并且至少有一行始终存在(但这是被克隆的行,我需要该按钮显示在所有其他克隆的行)。

感谢您的时间和帮助。

更新:感谢 Charles 和 Kei 的帮助。我必须融合你的两个解决方案才能达到我想要的。更新的解决方案发布在下面:

http://jsfiddle.net/sunalive/gqQnJ/13/

4

2 回答 2

0

http://jsfiddle.net/gqQnJ/10/但是您假设 html 无效,因为 id lineNo 是重复的 id。所以我认为你应该使用另一种方式来选择或识别输入。

于 2012-08-13T15:24:03.163 回答
0

演示

$(document).ready(function() {
    var autonumber = function() {
        $("tr.gridrow").each(function(i) {
            $(this).find("input[name='lineNo']").val(i + 1);
        });
    };
    autonumber();

    var emptyItems = $(".gridrow:first").clone();
    $(".addrow").live('click', function(e) {
        e.preventDefault();
        $(this).parents('.gridcontainer').append(emptyItems.clone());
        autonumber();
    });

    $(".delrow").live('click', function(e) {
        e.preventDefault();
        $(this).parents('.gridrow').remove();
        autonumber();
    });
})

请注意,您没有克隆具有相同 ID 的标签。你最好改用一个类。

于 2012-08-13T15:25:19.723 回答