我正在尝试在div #ta
中插入textarea .yes
的html值,而不会影响或删除类.no
的子div。目前它正在删除div的所有内容,包括具有类.no
的所有子元素。在http://jsfiddle.net/f2rPz/检查jsfiddle。
<div class="yes">test
<div class="no">no</div>
<div class="no">no</div>
</div>
<textarea id="ta"></textarea>
$('#ta').keyup(function() {
var x = $(this).val();
$('.yes').html(x)
})
答案 0 :(得分:2)
查看我的版本,该版本将替换"test"
文字,但保留.no
div。
基本上归结为:你想在DOM之外保留.no
div的副本,然后在替换.yes
的内容后重新附加它们。
$('#ta').keyup(function() {
var no = $('.yes > .no').remove();
var x = $(this).val();
$('.yes').html(x).append(no);
});
如果您不想影响所有孩子,请将选择器替换为'.yes > *'
,只会选择所有直接子女。
答案 1 :(得分:1)
改为使用追加功能:
$('#ta').keyup(function() {
var x = $(this).val();
$('.yes').append(x)
})
答案 2 :(得分:-1)
用html()
替换append()
即可。
更新:这是显示结果的jsFiddle分支:http://jsfiddle.net/X7YQU/