用Javascript设置HTML <span>的内容
在一个网页,我打电话给一个WebService,给我一个整数值。 我需要在一个文本块中显示这个值。 我目前正在使用HTML <span>
。
到目前为止,我已经find了两种把我的价值放在一个范围内的方法。 innerText()
是一种IE专有的方式, innerHTML()
是一种非标准兼容的方式,尽pipe得到了广泛的支持。
在Javascript中设置<span>
和</span>
之间正确的标准兼容方式是什么?
这是标准兼容和跨浏览器的安全。
例如: http : //jsfiddle.net/kv9pw/
var span = document.getElementById('someID'); while( span.firstChild ) { span.removeChild( span.firstChild ); } span.appendChild( document.createTextNode("some new content") );
使用现代浏览器,您可以设置textContent
属性,请参阅Node.textContent :
var span = document.getElementById("myspan"); span.textContent = "some text";
要做到这一点,而不使用jQuery等JavaScript库,你可以这样做:
var span = document.getElementById("myspan"), text = document.createTextNode(''+intValue); span.innerHTML = ''; // clear existing span.appendChild(text);
如果你想使用jQuery,只是这样的:
$("#myspan").text(''+intValue);
符合最大标准的方法是创build一个包含所需文本的文本节点,并将其附加到跨度(删除任何当前存在的文本节点)。
我实际上做的方式是使用jQuery的.text()
。