如果我有一个跨度,说:
<span id="myspan"> hereismytext </span>
如何使用JavaScript将“hereismytext”更改为“newtext”?
如果我有一个跨度,说:
<span id="myspan"> hereismytext </span>
如何使用JavaScript将“hereismytext”更改为“newtext”?
当前回答
对于这个张成的空间
<span id="name">sdfsdf</span>
你可以这样做:-
$("name").firstChild.nodeValue = "Hello" + "World";
其他回答
document.getElementById('myspan').innerHTML = 'newtext';
对于这个张成的空间
<span id="name">sdfsdf</span>
你可以这样做:-
$("name").firstChild.nodeValue = "Hello" + "World";
document.getElementById("myspan").textContent="newtext";
这将选择id为myspan的dom-node,并将其文本内容更改为新文本
对于现代浏览器,您应该使用:
document.getElementById("myspan").textContent="newtext";
虽然旧的浏览器可能不知道textContent,但不建议使用innerHTML,因为当新文本是用户输入时,它会引入XSS漏洞(参见下面的其他答案,了解更详细的讨论):
//POSSIBLY INSECURE IF NEWTEXT BECOMES A VARIABLE!!
document.getElementById("myspan").innerHTML="newtext";
除了上面的纯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/