Javascript 将对象的值插入跨度标记
我有一个目标:Javascript 将对象的值插入跨度标记,javascript,Javascript,我有一个目标: message: { text: Here is some text } 我想将其插入span标记中,如下所示: <span>message.text</span> 这不会打印“此处有一些文本”,而是在网页上显示“message.text”。如何让它显示对象的实际内容?给span一些id <span id="span"></span> $("#span").text(message.text); 您可以使用标记名来完成
message: {
text: Here is some text
}
我想将其插入span标记中,如下所示:
<span>message.text</span>
这不会打印“此处有一些文本”,而是在网页上显示“message.text”。如何让它显示对象的实际内容?给span一些id
<span id="span"></span>
$("#span").text(message.text);
您可以使用标记名来完成此操作
document.getElementsByTagName('span').textContent(message.text);
或者可以为跨度分配一些类或id
<span id="my_id"></span>
document.getElementById('my_id').textContent(message.text);
<span class="my_id"></span>
document.getElementsByClassName('my_id')[0].textContent(message.text);
如果您使用的是纯HTML和香草JavaScript,那么为什么除了message.text以外的其他内容会出现在span标记中呢 仅使用普通JavaScript,您可以执行以下操作:
var message = {
text: "Here is some text"
};
var spans = document.getElementsByTagName('span');
var el = spans[0];
el.innerText = message.text;
下面是一个JSFIDLE:
使用纯JavaScript:
var消息={
文字:“这里有一些文字”
};
document.getElementsByClassName'text-holder'[0].textContent=message.text;
严格使用vanilla js的一个简单解决方案,因为您在问题中没有使用jquery标记来处理工作代码段: 函数作用{ var messageObj={ 文本:这里有一些文本 } document.getElementsByTagName'span'[0].innerText=messageObj.text; } 占位符
是否使用任何模板引擎,例如Jade/Handlebar或普通HTML?使用DOM,选择span元素,从脚本中设置其.textContent。可能重复:JavaScript中没有getElementByTagName。您可能输入了一个拼写错误,意思是getElementsByTagName。@cezar谢谢。它的拼写错误本例使用jQuery,这很好,因为jQuery在处理DOM方面非常出色。不过,了解JavaScript在库/框架背后的工作原理是一个好习惯。很好的答案包括使用流行的库和框架。如果没有一个关键的输入错误,我会投票支持它:getElementByTagName。JS中没有这样的东西。你的意思是:getElementsByTagName?对不起,我发现另一个打字错误:AngulageJS@cezar什么事?哪一个?@cezar再次感谢
var message = {
text: "Here is some text"
};
var spans = document.getElementsByTagName('span');
var el = spans[0];
el.innerText = message.text;
document.getElementsByClassName('text-holder')[0].textContent = message.text;