如果我有一个跨度,说:

<span id="myspan"> hereismytext </span>

如何使用JavaScript将“hereismytext”更改为“newtext”?


当前回答

你也可以使用querySelector()方法,假设'myspan' id是唯一的,因为该方法返回带有指定选择器的第一个元素:

document.querySelector('#myspan').textContent = 'newtext';

developer.mozilla

其他回答

document.getElementById("myspan").textContent="newtext";

这将选择id为myspan的dom-node,并将其文本内容更改为新文本

我使用Jquery,上面没有一个帮助,我不知道为什么,但这是有效的:

 $("#span_id").text("new_value");

除了上面的纯javascript答案,你可以使用jQuery文本方法如下:

$('#myspan').text('newtext');

如果你需要扩展答案以获取/更改span或div元素的html内容,你可以这样做:

$('#mydiv').html('<strong>new text</strong>');

引用:

。text (): http://api.jquery.com/text/

. html (): http://api.jquery.com/html/

还有另一种方法:

var myspan = document.getElementById('myspan');

if (myspan.innerText) {
    myspan.innerText = "newtext";
}
else
if (myspan.textContent) {
        myspan.textContent = "newtext";   
}

innerText属性将被Safari,谷歌Chrome和MSIE检测。对于Firefox来说,标准的操作方式是使用textContent,但是从版本45开始,它也有一个innerText属性,就像最近有人好心告诉我的那样。该解决方案测试浏览器是否支持这些属性,如果支持,则分配“newtext”。

现场演示:这里

你也可以使用querySelector()方法,假设'myspan' id是唯一的,因为该方法返回带有指定选择器的第一个元素:

document.querySelector('#myspan').textContent = 'newtext';

developer.mozilla