快速提问,我有一个简单的javascript问题,我不知道修复问题。
divNext = document.getElementById("submit_button");
if(document.getElementById("page").value == 4 ? divNext.value = 'Submit' : divNext.value = 'Next »');
现在问题是它应该显示Next with two>>在它之后(至少如果它们在哪里编码)然而它在那里显示它们的实际内容。如何让它显示html编码的字符?
答案 0 :(得分:3)
这是因为您对该字符进行了HTML编码,而不是将其编码为Javascript字符串。
顺便说一句,您错误地使用了if
和?
条件运算符。
divNext = document.getElementById("submit_button");
divNext.value = document.getElementById("page").value == 4 ? 'Submit' : 'Next \xBB';
或使用if
:
divNext = document.getElementById("submit_button");
if (document.getElementById("page").value == 4) {
divNext.value = 'Submit'
} else {
divNext.value = 'Next \xBB';
}
答案 1 :(得分:0)
将它们放入
document.getElementById("page").value == 4 ? divNext.value = 'Submit' : divNext.value = 'Next >>');
或使用.innerHTML
document.getElementById("page").value == 4 ? divNext.innerHTML = 'Submit' : divNext.innerHTML = 'Next »»');
另外,如果您使用的是三元运算符,为什么还有if
?