【问题标题】:appendTo working with div but not with textarea [duplicate]appendTo 使用 div 但不使用 textarea [重复]
【发布时间】:2014-12-16 12:03:21
【问题描述】:
我正在运行以下 jQuery 代码:
$('a.testlink').click(function() {
var $essay = $(".tinyeditor iframe").contents().find("body").clone();
$essay.appendTo("div.test");
});
如您所见,它在 iframe 中查找“body”的内容(同一来源);并将其附加到 div 中。
上面的代码工作正常。但是如果我将 appendTo 从 div 更改为 textarea,它就不起作用了。
我做错了什么?
【问题讨论】:
标签:
javascript
jquery
appendto
【解决方案1】:
.appendTo() 将内容附加为 html。它不适用于textarea。您需要设置 textarea 的值。
在textarea里面追加,需要把textarea的值设置为原来的内容+新的内容。
$('textarea').val($('textarea').val() + $essay.html());
更新:
如果我想用新的内容替换所有内容怎么办
您只需使用 .val() 和新内容设置值即可:
$('textarea').val( $essay.html());
【解决方案2】:
您不能将任何内容附加到 textarea。
但是,您可以使用 .val() 方法设置其值。
$('textarea').val(whatever);
【解决方案3】:
您需要设置textarea 的val(),而不是附加到它:
$('textarea.test').val($essay.html());