www.cftea.com

文本框 textarea HTML 实体探求-取出其中的内容是怎样的?

ITPOW2019/8/13 17:51:54

前面说了 textarea 在显示内容时,是先执行 HtmlDecode。

那么如果用 JS 取出其中的值,是怎样的呢?

法一、document.getElementById("t1").value

使用 value 取值,取出的和我们看到的一样,也就是说也是经过 HtmlDecode 了的。

法二、document.getElementById("t1").innerText

这个只在 IE 中有效,在 Edge、Chrome 中均为零长度字符串,所以不用考虑了。顺带说一下,在 IE(包括 IE 11) 中和 value 效果一样。

注意并不是 Edge、Chrome 完全不支持 innerText,而是不支持对 textarea 使用,对其他控件,比如 div,则是可以使用 innerText 的。

法二、document.getElementById("t1").innerHTML

innerHTML 比较头痛,有点乱,总结了一下:

  • <、>、& 及 &lt;、&gt;、&amp; 分别为:&lt;、&gt;、&amp。
  • 空格是空格,&nbsp; 是 &nbsp;。
  • "、' 及 &quot;、&apos; 分别为:"、'。

大概就是:

  • 有一部分始终是实体名称
  • 有一部分是符号还是实体名称看源码的
  • 有一部分始终是符号

相关阅读

<<返回首页<<