我在使用HTML实体时尝试设置输入字段的值时遇到问题,因为它们实际上是"
而不是"
。
以下是我正在使用的代码:
document.getElementById('inputSurname').setAttribute('value', 'test"""');
其中输出为test"""
,但我希望输出为test"""
。
它看起来不像双重编码问题,因为在源代码中我看到的方式与我在此处设置的方式相同。
我知道我可以解码其HTML实体格式的值,尽管这是我想要避免的安全性。
非常感谢任何帮助:)
答案 0 :(得分:2)
试试这个:
document.getElementById('inputSurname').value = 'test"""';
或者如果你想保持& quot:
function myFunction() {
document.getElementById('myText').value = replaceQuot('test"""');
}
function replaceQuot(string){
return string.replace('"', '""');
}
答案 1 :(得分:1)
或者您可以使用转义字符。
document.getElementById("inputSurname").setAttribute("value", "test\"\"\"\"");
答案 2 :(得分:0)
你可以把新值写成'test"""'
。
但是对于其他字符,我将引荐您回答这个问题:HTML Entity Decode