从servlet向js应用程序发送HTML会破坏Firefox中的数据
Sending HTML from servlet to js application corrupts data in Firefox
我正在使用javaservlet和js端的iframe将一些HTML代码发送回iframe。实际上,我只是通过使用jQuery将HTML代码中的一些json封装在一个<div>
中来解析它,但返回的字符串有时会添加文本。
如果添加的文本中有一个带括号的单词,Firefox会自动为我关闭括号,这是我不想要的。
例如,如果我发送这个:
<div>{"location":[],"columns":["<case expression>","headers"]}</div>
Firefox(到目前为止只有Firefox,而不是IE或chrome)将以如下方式接收:
<div>{"location":[],"columns":["<case expression>","headers"]}</case></div>
这搞砸了我的解析。我发送的文本带有text/html
的Content-Type
,我认为这可能是问题的原因。我尝试过application/json
中的Content-Type
,但它不会向iframe写入html,除非我使用text/html
。
有人能帮我解决问题吗?如果数据不太广泛,我愿意尝试另一种发送数据的方法。
为了防止浏览器将HTML元字符解释为HTML元字符,以便您的"<"answers">"字符最终成为文本的一部分,您可以将它们作为HTML实体"转义"。"<"字符为<
,">"为>
。人们通常也会引用与号("&")作为&
,但我认为浏览器通常对此更聪明一点。
由OP编辑代码解决方案:
我用的是StringEscapeUtils.escapeHTML()
,效果很好。谢谢
相关文章:
- 如何正确地将数据发送到打开的Firefox侧边栏
- writeln img src将数据提交到外部系统-Firefox和IE挂起
- 将base64图像数据作为src分配给图像时,Firefox和Chrome上的结果不一致
- 如何在Firefox中使用xmlhttprequest和二进制数据,例如图像
- 如何引用Firefox扩展的数据目录中的文件
- html数据属性在firefox中使用javascript时没有按预期显示,但在chrome中显示正确
- Firefox扩展:获取上下文菜单时的点击数据
- $('body').html()从来自Firefox中$jQuery.post的响应数据中给出了空白内容
- imacros JavaScript 将数据保存到文件中,在 Firefox 中给出错误
- 如何在(javascript)Firefox插件中有效地存储传入数据
- window.opener.dispatchEvent 不会在 Firefox 中传输附加的数据
- 如何访问 Firefox 附加 SDK 中 onHttpRequest 函数中给出的数据
- Firefox 加载元数据事件
- 如何在 Firefox 附加 SDK 扩展中使用 'jpm run' 时将数据持久存储在 'localStorage'
- 在 Firefox Add-on SDK 中使用 port.on 传递数据
- Ajax 调用 IE8 不显示所有数据,适用于 Firefox 和 IE9
- 使用jQuery通过数据属性进行选择在chrome中有效,而不是在firefox中.可供替代的
- 如何使用纯Javascript让用户将剪贴板中的图像数据粘贴到Firefox中的画布元素中
- 从servlet向js应用程序发送HTML会破坏Firefox中的数据
- 如何在Mozilla Firefox中获取web服务数据