Javascript节点值不接受新变量
以下是我所拥有的: 我动态创建此标记:Javascript节点值不接受新变量,javascript,dom,Javascript,Dom,以下是我所拥有的: 我动态创建此标记: <p id="amount"><span></span></p> amount是一个使用getElementbyId创建的变量,text是一个可以工作的变量,它只显示一个数字 现在,为什么不接受文本作为值?它呈现和空跨度。。。而且文本工作得很好 谢谢大家 尝试使用: amount.firstChild.innerHTML = text; amount.firstChild.appendChild(doc
<p id="amount"><span></span></p>
amount是一个使用getElementbyId创建的变量,text是一个可以工作的变量,它只显示一个数字
现在,为什么不接受文本作为值?它呈现和空跨度。。。而且文本工作得很好
谢谢大家 尝试使用:
amount.firstChild.innerHTML = text;
amount.firstChild.appendChild(document.createTextNode(text));
.尝试使用:
amount.firstChild.appendChild(document.createTextNode(text));
.您可以测试范围中的嵌套文本节点,如果没有,则创建它
var span = amount.firstChild
if (!span.firstChild)
span.appendChild(document.createTextNode(text));
else
span.firstChild.nodeValue = text;
可以测试范围中的嵌套文本节点,如果没有,则创建它
var span = amount.firstChild
if (!span.firstChild)
span.appendChild(document.createTextNode(text));
else
span.firstChild.nodeValue = text;
我怀疑警报是否显示SPAN。它显示1。你是说
nodeName
?我怀疑警报是否显示SPAN。它显示1。你是说nodeName
?textContent
而不是innerHTML
。否则,文本将被解析为HTML。如果您担心浏览器兼容性问题,请使用amount.firstChild.appendChild(document.createTextNode(text))代码>。如果
事先不是空的,则在代码段前面加上amount.firstChild.innerHTML=''代码>谢谢你的评论。我不知道。textContent
而不是innerHTML
。否则,文本将被解析为HTML。如果您担心浏览器兼容性问题,请使用amount.firstChild.appendChild(document.createTextNode(text))代码>。如果
事先不是空的,则在代码段前面加上amount.firstChild.innerHTML=''代码>谢谢你的评论。我不知道。