通过javascript设置占位符文本时,特殊字符无法正确显示。
function myFunction() {
document.getElementById("myText").placeholder = "Événement";
}
<input type="text" id="myText" placeholder="Événement">
<p>Click the button to change the placeholder text of the text field.</p>
<button onclick="myFunction()">Try it</button>
输出为:“Événement”
预期输出:“Événement”
寻找一个JavaScript解决方案,在这里我可以转换任何包含任何编码字符的文本。
最佳答案
转换的最直接方法是创建一个元素,将HTML实体设置为innerHTML并获取textContent,如下所示:
function myFunction() {
let a = document.createElement('span');
a.innerHTML = 'Événement from JS';
document.getElementById("myText").placeholder = a.textContent;
}
<input type="text" id="myText" placeholder="Événement">
<p>Click the button to change the placeholder text of the text field.</p>
<button onclick="myFunction()">Try it</button>