Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
设置HTML的内容<;span>;使用Javascript_Javascript_Dhtml_Html - Fatal编程技术网

设置HTML的内容<;span>;使用Javascript

设置HTML的内容<;span>;使用Javascript,javascript,dhtml,html,Javascript,Dhtml,Html,在一个网页中,我调用一个给我一个整数值的Web服务。我需要在文本块中显示此值。我目前使用的是HTML 到目前为止,我已经找到了两种方法将我的价值放在一个范围内innerText()是IE专有的方式,而innerHTML()是一种不符合标准的方式,尽管受到广泛支持 在Javascript的和之间设置文本的正确标准是什么?要在不使用诸如jQuery之类的Javascript库的情况下执行此操作,请执行以下操作: var span = document.getElementById("myspan")

在一个网页中,我调用一个给我一个整数值的Web服务。我需要在文本块中显示此值。我目前使用的是HTML

到目前为止,我已经找到了两种方法将我的价值放在一个范围内
innerText()
是IE专有的方式,而
innerHTML()
是一种不符合标准的方式,尽管受到广泛支持


在Javascript的
之间设置文本的正确标准是什么?

要在不使用诸如jQuery之类的Javascript库的情况下执行此操作,请执行以下操作:

var span = document.getElementById("myspan"),
    text = document.createTextNode(''+intValue);
span.innerHTML = ''; // clear existing
span.appendChild(text);
如果您确实想使用jQuery,它只是这样:

$("#myspan").text(''+intValue);

最符合标准的方法是创建一个包含所需文本的文本节点,并将其附加到跨度中(删除当前存在的任何文本节点)


我实际要做的是使用jQuery的
.text()

这是符合标准且跨浏览器安全的

示例:


使用现代浏览器,您可以设置
textContent
属性,请参见:


您只需执行
.text(intValue)
。不需要通过连接强制进行字符串转换。从HTML5开始,
innerHTML
是规范的一部分,所有浏览器都支持它(除了IE(所有浏览器)中的一些问题,
table
select
elements/subelements上的setter)谢谢你,这对我有帮助。这应该是公认的答案,因为它更容易阅读和更干净
var span = document.getElementById('someID');

while( span.firstChild ) {
    span.removeChild( span.firstChild );
}
span.appendChild( document.createTextNode("some new content") );
var span = document.getElementById("myspan");
span.textContent = "some text";