首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >附加HTML-转义文本: jQuery

问附加HTML-转义文本: jQuery
EN

Stack Overflow用户
提问于 2012-08-14 17:22:01
回答 3查看 15.5K关注 0票数 8

我习惯于使用jQuery的.append()方法将文本或HTML添加到预先存在的元素的末尾。我目前正在使用jQuery的.text()来转义可能包含HTML的字符串。不幸的是,似乎没有一个jQuery方法可以将.text()方法的结果附加到元素中,而不是替换它的内容。

是否有一种方法将此转义文本附加到元素中而不是替换?还是有更好的方法来转义包含HTML的字符串?

谢谢。

-编辑-

更多的上下文:我正在动态地构建一个HTML字符串,因此我需要能够通过编程方式添加多个带有转义内容的元素。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-14 17:26:36

您可以创建一个虚拟元素来保存.text()的结果,然后可以将其追加到目标元素:

代码语言:javascript
复制
$('<div/>').text('your <span>html</span> string').appendTo(...);
票数 6
EN

Stack Overflow用户

发布于 2013-06-23 06:58:18

由于我已经尝试过许多方法,我认为以下方法是向任何节点添加文本的最干净的方法。不需要股票标签,只需要纯文本,这将有助于避免潜在的问题。

代码语言:javascript
复制
$(document.createTextNode("SomePlainText")).appendTo(p);
票数 8
EN

Stack Overflow用户

发布于 2012-08-14 17:24:12

你可以用

代码语言:javascript
复制
$(whatever).text($(whatever).text() + whatever_you_want_to_append);

编辑我的评论中的小提琴,尝试如下:

代码语言:javascript
复制
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
}

jsFiddle

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11957529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档