用jQuery操纵html

时间:2011-02-01 13:01:26

标签: jquery html

我有这样的事情:

<div id='cb1'>
<input name='c1' value='12'>
<input name='c1' value='32'>
   ...
<input name='c1' value='32'>
</div>

<div id='z1'>
</div>

我需要 将所有输入从#cb1复制到#z1并将其重命名为x1,这样我就可以了:

<div id='z1'>
<input name='x1' value='12'>
<input name='x1' value='32'>
   ...
<input name='x1' value='32'>
</div>

3 个答案:

答案 0 :(得分:3)

$("#cb1").children().attr("name", "x1").appendTo($("#z1"));

$("#cb1").children().clone(true).attr("name", "x1").appendTo($("#z1"));

在这里,我们从#cb1获取子项(输入),我们可以选择克隆它们,具体取决于您是否要#cb1移动到#z1或者您是否要在#z1

中复制它们

然后我们为所有这些设置了namex1的attr,然后我们追加到#z1容器。

可以说你想使用.find("input")作为@ Box9,具体取决于它是否还有其他孩子。如果#cb1只有输入,那么.children会更快,否则我们只能使用input元素。您也可以使用.children("input")

同样.find查找嵌套输入,而.children只查找一层

.children.attr.appendTo.clone.find

答案 1 :(得分:2)

$('#cb1').find('input').clone().attr('name', 'x1').appendTo('#z1');

如果您附加了需要复制的数据和事件,请使用.clone(true)

答案 2 :(得分:-1)

$(“#cb1”)。html(“put here the html”);