首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >替换键名数组输入jquery

替换键名数组输入jquery
EN

Stack Overflow用户
提问于 2015-03-25 23:37:38
回答 1查看 2.5K关注 0票数 2

我有个奇怪的问题。我们有带有id的数据属性的按钮。v1,v2和v3。

代码语言:javascript
复制
<table id="table-1" data-car-id="v1">
    <tr><td>Header1</td></tr>
    <tr><td>Content1 <input type="text" name="car[v1][marked][12]" /></td></tr>
    <tr><td>Footer</td></tr>
</table>

<button id="copy-2" data-car-id="v2">Copy Table</button>
<table id="table-2">

</table>

<button id="copy-3" data-car-id="v3">Copy Table</button>
<table id="table-3">

</table>

一小块Javascript将上表的正文复制到最近的下一个表。(这起作用)。

代码语言:javascript
复制
$("button[id^='copy']").click(function() {
    var $carId = $(this).attr('data-car-id');
    alert($carId);
    var $prevTable = $(this).prev("table[id^='table-']").prop('innerHTML');
    var $nextTable = $(this).next("table").html($prevTable);
});

但现在棘手的是,应该替换tbody中所有输入的输入名。而市场应该保持不变

carv112 => carv212

我怎么能这么做?让它变得简单,并使用我创建的JSFiddle:https://jsfiddle.net/ra35z8ff/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-25 23:51:24

将HTML复制到下一个table元素后,选择所有的子input元素并对它们进行迭代。使用 method将以前的table元素的data-car-id属性替换为当前button元素的data-car-id属性。

Updated Example

代码语言:javascript
复制
$("button[id^='copy']").on('click', function () {
    var id = $(this).attr('data-car-id'),
        previousId = $(this).prev('button').attr('data-car-id');
        html = $(this).prev("table[id^='table-']").prop('innerHTML');

    $(this).next("table").html(html).find('input').each(function () {
        this.name = this.name.replace(previousId, id);
    });
});
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29268557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档