jquery - 在 JQuery 中通过添加行/克隆来增加类

标签 jquery

Possible Duplicate:
How to use jQuery to add a new row to a table, and assgin an incrementing id to it

我有一些表格行如下:

<td><input id="RS_Staff_Title1" name="RS_Staff_Title1" style="width:100%;"></td>

<td><input id="RS_No_WD_Staff1" name="RS_No_WD_Staff1" style="width:100%;"></td>

<td><input id="RS_No_Weekdays1" name="RS_No_Weekdays1" style="width:100%;"></td>

<td><input id="RS_No_WE_Staff1" name="RS_No_WE_Staff1" style="width:100%;"></td>

<td><input id="RS_No_WE_Days1" name="RS_No_WE_Days1" style="width:100%;"></td>

<td><img class="remove_row" src="assets/images/delete-icon.png"></td>

然后我有一个按钮,它获取最后一个表行并将其克隆到下面的行,因此使用此 Jquery 添加新行”

$("#add_row").click(function() {
        $('#staff tbody>tr:last').clone(true).insertAfter('#staff tbody>tr:last');
        return false;
    });

我需要将 RS_Staff_Title1 变为 RS_Staff_Title2、RS_Staff_Title3 等等 - 其他列也会发生同样的情况。

我怎样才能实现这个目标?

最佳答案

一种可能的解决方案:

$("#add_row").click(function() {
    var row = $("#staff tbody > tr:last"),
        newRow = row.clone(true);

    newRow.find("input").each(function() {
        var num = +(this.id.match(/\d+$/) || [0])[0] + 1;
        this.id = this.id.replace(/\d+$/, "") + num;
        this.name = this.id;
    });

    newRow.insertAfter(row);
    return false;
});

演示: http://jsfiddle.net/GHTN7/

关于jquery - 在 JQuery 中通过添加行/克隆来增加类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12704383/

相关文章:

javascript - 在 JavaScript 中为函数创建配置

javascript - jQuery 更新不起作用,但 javascript 可以

javascript - 此代码不会在 jquery-3.1.0.js 上运行

javascript - 如何将phonegap 2.5的插件升级到最新的3.1版本?以及向 phonegap 添加附加插件的流程是什么

javascript - 如何检查 Simple Jquery Tic Tac Toe 的赢家

javascript - jQuery:链接动画和 AJAX 请求

javascript - jQuery 无法找到最接近的 p

jquery - 下拉菜单隐藏在 slider 后面

JavaScript 抛出 'cannot read property ... of undefined' 错误

Javascript动态添加选项值