【发布时间】:2016-08-13 00:05:36
【问题描述】:
我有一个将字符串写入<textarea> 的脚本。该字符串可能包含 HTML 实体(如 &amp;)。当字符串写入<textarea> 时,HTML 实体被解码。
var str = 'foo & bar';
form.text.value = str;
会发生什么:
Textarea: foo &amp; bar
我想要什么:
Textarea: foo &amp; bar
我怎样才能做到这一点?
编辑我怎样才能做到这一点在 javascript 中,而不是 PHP?
【问题讨论】:
-
阅读链接上的答案,上面有 24 个刻度 - 这与 php 无关,但更多的是浏览器呈现 textarea 内容的方式
-
我不确定我是否理解您在那里所做的事情,因为将这样的标签写入 textarea 应该可以按您的意愿工作 (jsfiddle.net/41wp4jvs)。你确定 form.text 是 textarea 吗?
-
@Ness 无论出于何种原因,它都没有出现在我的浏览器中。虽然你的小提琴显示正确......
-
@JB0x2D1 奇怪。但我真的不认为你在下面发布的解决方案有什么好处。它不会捕获所有情况(您可能会错过其他字符)并且在某些浏览器中它可能会看到双倍。也许在你这样做之前尝试以与我在 jsfiddle 中相同的方式访问 textarea,例如通过 id。看看它是否适合你。
-
也许吧,但我是在本地机器上加载页面,所以我不担心其他浏览器会如何处理它。也许有人会出现并找出浏览器的这种行为并将其散列到 if firefox then x;如果是铬,那么 y;如果 Internet Explorer 然后 z。我在 Ubuntu 15.10 上使用最新版本的 Chromium。
标签: javascript html