我想用tag替换tag,但不替换所有子元素(只是父元素)。如何用jQuery做到这一点?
感谢
答案 0 :(得分:5)
var elToRemove = $('your-element');
var children = elToRemove.children().detach();
elToRemove.replaceWith('<whatever id="something">Foo Bar</whatever>').append(children);
请注意,这实际上会删除父元素,并插入一个新元素,因此所有详细信息(如事件处理程序和数据)都将在父项上丢失,但会保留在子项上。
答案 1 :(得分:2)
我不确定我完全理解这个问题,但也许这就是答案? ; - )
$('#replaceme').children().unwrap().wrap('<div id="new"></div>');
查看实际操作:http://jsbin.com/adene3/edit
文档: