【发布时间】:2011-03-12 19:03:13
【问题描述】:
基本上我需要能够在 目前,当我使用 jQuery 进行字符串替换时,所有标签都作为页面上的实际 HTML 出现: 我不能将 html() 更改为 text() 因为任何 HTML,在块之外都可以。我基本上正在寻找与此文本框/代码标签想法在stackoverflow上的工作方式非常相似的东西。 有没有使用 JavaScript / jQuery 的简单方法? 谢谢 块中搜索标签“”并将它们设置为 TEXT 而不是 HTML,以便我可以在页面上显示所有标签和 HTML。
var text = $("#edit").val();
filter = text.replace(/</gi,"<").replace(/>/gi,">");
$("#output").html(filter);
【问题讨论】:
-
我有点困惑。您将
text中出现的所有<和>替换为相应的HTML 实体。因此,您以某种方式在text文字中制作 every 标记。那你为什么不使用$("#output").text(text)呢?text中没有 HTML 标记要呈现。我想说的是,你给出的不使用text()的理由没有道理。还是我错过了什么? -
不建议使用正则表达式来解析 HTML - 看到这个(著名的!)帖子stackoverflow.com/questions/1732348/…JS 非常擅长解析 HTML ;)
标签: jquery html string escaping