Jquery克隆选择器并修改选项id

标签 jquery clone

<select id="one">
    <option id="one_val_a" value="one">one</option>
    <option id="two_val_a" value="two">two</option>
    <option id="three_val_a" value="three">three</option>
</select>

<span id="pin"></span>

我如何克隆#one,使其ID为#two,并将其选项ID设置为#one_val_b# Two_val_b

$('#one').clone(true, true).attr('id', 'two').appendTo('#pin');

这至少会更改克隆的 ID,但现在如何更改其选项 ID?

Jsfiddle:http://jsfiddle.net/C2zCZ/2/

最佳答案

这是另一种方法,使用正则表达式替换 option id 属性,因此原始 select 有多少个选项并不重要:

$('#one').clone(true, true)
    .attr('id', 'two').appendTo('#pin')
    .find("option").each(function() {
        $(this).attr("id", $(this).attr("id").replace(/\_a$/, "_b"));
    });

Example fiddle

关于Jquery克隆选择器并修改选项id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10795153/

相关文章:

jquery - 检查文本框是否为空然后运行代码

java - 了解克隆方法

java - 动态克隆 android Activity ?

javascript - 如何阻止用户选择开始时间之前的结束时间

javascript - 无法在不重新加载页面的情况下提交表单

javascript - 如何克隆选定的div

javascript - 在克隆每个元素后添加换行符

JavaScript错误: Why I cannot clone/copy a tag from "li" to "table"?

jquery - 提交后使用 jQuery 禁用表单

jquery - 如何在jstree中选择多个不同颜色的节点