HTML 特殊符号显示为字符

html special symbols is displayed as characters

本文关键字:字符 显示 特殊符号 HTML      更新时间:2023-09-26

我一直在尝试使用 JS 动态设置文本输入的内容,我遇到的问题是我不能让浏览器呈现特殊符号而不是字符,例如

document.getElementById("textField").value = "nbsp";

而不是显示它显示的空间&nbsp,有人知道吗?

多谢

似乎您想在 JavaScript 字符串文本中输入特殊字符,例如 NO-BREAK 空格。您可以直接执行此操作,前提是正确声明了包含 JavaScript 代码的文件的字符编码,无论如何都应该如此:

document.getElementById("textField").value = ' ';

在这里,撇号之间的字符是真正的不间断空格字符。在渲染中,它通常与普通 SPACE 无法区分,但它具有不同的效果。同样,您可以编写例如

document.getElementById("textField").value = 'Ω';

直接使用希腊字母大写欧米茄。

如果您不知道如何输入此类字符(例如,通过Windows CharMap程序),或者如果您无法控制字符编码问题,则可以对字符使用JavaScript Unicode转义表示法,例如

document.getElementById("textField").value = ''u00A0'; // no-break space

document.getElementById("textField").value = ''u03A9'; // capital omega

对于 Unicode 编号小于 0x100 的一小部分字符,您也可以使用'x转义,例如 ''xA0'而不是''u00A0'.(但如果你不知道这一点,最好学会使用通用'u逃生来代替。

 是一个 HTML 实体,你不能把 HTML 实体放在这样的文本字段中。


尝试使用 unicode,如下所示:

document.getElementById("textField").value = ''xA0';

使用 jquery 和这个怎么样:

$("#textField").html('&nbsp').text()

或者更一般地说:

$(element).html(encodedString).text()
document.getElementById("textField").value = " ";

你应该使用" " 而不是 " nbsp"