javascript - 无法使用 Javascript 将 HTML 按钮元素的标题或值设置为 C 度符号

标签 javascript html

ESP8266 用于动态生成包含按钮的网页。 Javascript 嵌入在 c 中。按钮的标签(又名标题又名值)根据模式进行切换。

设置按钮标题的代码如下所示

document.getElementByID('idUnits').value='°C'

当使用chrome的开发工具并查看生成的html时,它看起来像

<input type="button" value="&#176;C" id="idUnits" onclick="dendbuttons(this.id);">

如果我将鼠标悬停在该值上并右键单击“编辑属性”,它会显示 °C 但是,如果我将鼠标悬停在该值上并“编辑为 HTML”,它会向我提供要编辑的内容,其中包括不需要的amp;

<input type="button" value="&amp;#176;C" id="idUnits" onclick="dendbuttons(this.id);">

如果我去掉放大器;编辑时(在 Chrome 的开发工具中)按钮 html 显示正确的符号。

为什么amp;添加到按钮的值。我如何鼓励它不要这样做。我正在使用类似的技术来动态更新其他带有度数符号的 html 元素,没有任何问题。仅当尝试使用“按钮”元素执行此操作时,我才会遇到问题。

最佳答案

这是因为 value 属性不解析您的 HTML。因此 htmlEntity(度数符号)字符串还不会被视为一个。尽管在使用“编辑为 HTML”时,您会突然解析您选择为 HTML 的所有内容,包括 htmlEntity 字符串。

我建议您使用按钮元素。

<button type="button" id="idUnits" onclick="dendbuttons(this.id);"></button>

并使用 .innerHTML setter 添加 htmlEntity,它将把您的字符串解析为 HTML,从而解码符号并呈现它。

document.getElementByID('idUnits').innerHTML = '&#176;C';

关于javascript - 无法使用 Javascript 将 HTML 按钮元素的标题或值设置为 C 度符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59473626/

相关文章:

javascript - 动态更改相对左上角的 div 位置

javascript - Node.js | Express.js | Redis.io - 处理顺序

html - 我如何摆脱 HTML 电子邮件中图像和表格单元格周围的空白区域

javascript - 按钮在 Mozilla Firefox 中不起作用,但在 Google Chrome 中不起作用

html - 无法设置表格高度

javascript - 如何从 javascript 触发工具提示?

javascript - 在单独的文件中重写prototype.js中的getOffsetParent()函数

javascript - 原型(prototype)框架破坏其他脚本

jquery - 显示模式内复选框的工具提示

javascript - HTML & CSS : Fixed position when no scrollbar