我在容器中有4个div。我想显示容器的html,其中包含textarea中的div。我能做到这一点。问题是,我不想获得容器的所有html。我不想得到#iv #three。我想复制除div #three之外的容器的所有html。我可以使用$('#three').remove()
但我不想删除div,我只是不想将它的html值复制到textarea。检查jsfiddle http://jsfiddle.net/rzfPP/
<div id="container">
<div id="one">test 1 </div>
<div id="two">test 2 </div>
<div id="three">test 3 </div>
<div id="four">test 4 </div>
</div>
<textarea id="save"></textarea>
var x = $('#container').html();
$('#save').val(x);
答案 0 :(得分:3)
答案 1 :(得分:1)
/*
var x = $('#container').html();
$('#save').val(x);
*/
var lol = $('#container').clone()
$(lol).find('#three').remove();
$('#save').val(lol.html());
答案 2 :(得分:1)
$('#container').clone().find('#three').remove().end().html();
从技术上讲,这是非法的,因为你复制了ID,但它运行正常。
编辑:有人打败了我:(好吧。
答案 3 :(得分:0)
var text = "";
$('#container div').each( function() {
if ( this.id != "three" ) {
text += $(this).html();
}
});
$('#save').val( text );
基本上你逐个检查#container里面的div,并检查他们的id。如果它是您想要的,请将其html添加到字符串中。然后在结尾处将该字符串作为textarea值。