如何阻止Javascript解析"到“?

问题描述:

我有一个奇怪的问题,每当我尝试使用下面的代码如何阻止Javascript解析"到“?

function UpdateOutput(){ 
    var toWrite = ""; 
    toWrite += '"' + value + '"'; 
    element.innerHTML = toWrite; 
} 

写通过JavaScript一个"元素显示

"value" 

而不是

"value&quot 

有一种方法可以防止这种情况发生?

+6

''"被解释为'“'时为HTML这是你分不清什么元素做,当你设置它的HTML显示。天真地,你可以用'&'预先替换'&'。 –

+0

[如何在PRE或类似的东西中显示原始html代码但不转义]的可能的副本(https://*.com/questions/16783708/how-to-display-raw-html-code-in-pre - 或 - 类似于它,但不能转义) –

+3

您可以使用'innerText'或['insertAdjacentText'](https://developer.mozilla.org/en-US/docs/Web/API/Element/insertAdjacentText)而不是'innerHTML'来防止html实体被解码。在元素 –

尝试toWrite += '"' + value + '"';