我一直在尝试使用JS动态设置文本输入的内容,我遇到的问题是我不能让浏览器呈现特殊符号而不是字符,例如
document.getElementById("textField").value = "nbsp";
不是显示它显示的空格,而是任何人都知道了吗?
非常感谢
答案 0 :(得分:2)
您似乎想在JavaScript字符串文字中输入特殊字符,例如NO-BREAK SPACE。您可以直接执行此操作,前提是正确声明包含JavaScript代码的文件的character encoding,无论如何应该如此:
document.getElementById("textField").value = ' ';
这里撇号之间的字符是真正的NO-BREAK SPACE字符。在渲染中,它通常与普通SPACE无法区分,但它具有不同的效果。同样,你可以写例如。
document.getElementById("textField").value = 'Ω';
直接使用希腊字母大写字母omega。
如果您不知道如何输入此类字符(例如,通过Windows CharMap程序)或者您无法控制字符编码问题,则可以将JavaScript Unicode escape notations用于字符,例如
document.getElementById("textField").value = '\u00A0'; // no-break space
或
document.getElementById("textField").value = '\u03A9'; // capital omega
对于Unicode数字小于0x100的小字符集,您也可以使用\x
转义符,例如'\xA0'
代替'\u00A0'
。 (但如果您不知道这一点,最好学会使用通用\u
转义。)
答案 1 :(得分:1)
是一个HTML实体,您不能将HTML实体放在这样的文本字段中。
尝试使用unicode,如下所示:
document.getElementById("textField").value = '\xA0';
答案 2 :(得分:0)
document.getElementById("textField").value = " ";
答案 3 :(得分:0)
你应该使用“”代替“nbsp”
答案 4 :(得分:0)
如何使用jquery和这个:
$("#textField").html(' ').text()
或者更一般:
$(element).html(encodedString).text()