我习惯于使用jQuery的.append()方法将文本或HTML添加到预先存在的元素的末尾。我目前正在使用jQuery的.text()来转义可能包含HTML的字符串。不幸的是,似乎没有一个jQuery方法可以将.text()方法的结果附加到元素中,而不是替换它的内容。
是否有一种方法将此转义文本附加到元素中而不是替换?还是有更好的方法来转义包含HTML的字符串?
谢谢。
-编辑-
更多的上下文:我正在动态地构建一个HTML字符串,因此我需要能够通过编程方式添加多个带有转义内容的元素。
发布于 2012-08-14 17:26:36
您可以创建一个虚拟元素来保存.text()的结果,然后可以将其追加到目标元素:
$('<div/>').text('your <span>html</span> string').appendTo(...);发布于 2013-06-23 06:58:18
由于我已经尝试过许多方法,我认为以下方法是向任何节点添加文本的最干净的方法。不需要股票标签,只需要纯文本,这将有助于避免潜在的问题。
$(document.createTextNode("SomePlainText")).appendTo(p);发布于 2012-08-14 17:24:12
你可以用
$(whatever).text($(whatever).text() + whatever_you_want_to_append);编辑我的评论中的小提琴,尝试如下:
for ( /* some looping parameters */ ) {
$('<li></li>') // create an li
.text(stringWithHtml) // pass it the text, as text not html
.appendTo('#thisIsWhatINeed'); // append it where you want it
}https://stackoverflow.com/questions/11957529
复制相似问题