gpt4 book ai didi

javascript - 将 HTML 从 servlet 发送到 js 应用程序会损坏 Firefox 中的数据

转载 作者:行者123 更新时间:2023-12-02 19:46:26 25 4
gpt4 key购买 nike

我使用 java servlet 和 js 端的 iframe 将一些 HTML 代码发送回 iframe。实际上,我只是通过将 HTML 代码封装在单个 <div> 中来解析一些 json。 ,使用 jQuery,但发回的字符串有时会添加文本。

如果添加的文本包含带有尖括号的单词,Firefox 会自动为我关闭尖括号,这是我不希望的。

例如,如果我发送此:

<div>{"location":[],"columns":["<case expression>","headers"]}</div>

Firefox(目前只有 Firefox,不是 IE 或 Chrome)将收到如下消息:

<div>{"location":[],"columns":["<case expression>","headers"]}</case></div>

这搞砸了我的解析。我正在发送带有 Content-Type 的文本的text/html ,我认为这可能是导致问题的原因。我试过Content-Typeapplication/json ,但它不会将 html 写入 iframe,除非我使用 text/html .

有人可以帮我解决吗?如果数据不是太广泛,我愿意尝试不同的发送数据的方法。

最佳答案

为了阻止浏览器如此解释 HTML 元字符,以便您的“<”和“>”字符最终成为文本的一部分,您可以将它们“转义”为 HTML 实体。 “<”字符是<,“>”是>。人们通常也会将与号(“&”)引用为 &,但我认为浏览器通常对此更聪明。

由OP编辑代码解决方案:

我使用了StringEscapeUtils.escapeHTML(),效果非常好。谢谢!

关于javascript - 将 HTML 从 servlet 发送到 js 应用程序会损坏 Firefox 中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9827218/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com