[英]Insert value of object into span tag
I have an object: 我有一个对象:
message: {
text: Here is some text
}
I want to insert it into a span tag like this: 我想将它插入到这样的span标签中:
<span>message.text</span>
This won't print 'Here is some text', instead it will just show 'message.text' on the webpage. 这不会打印“这是一些文字”,而是只在网页上显示“message.text”。 How can I get it to show the actual contents of the object?
如何让它显示对象的实际内容?
Give something id to span 给一些id来跨越
<span id="span"></span>
$("#span").text(message.text);
With Plain JavaScript: 使用Plain JavaScript:
document.getElementsByClassName('text-holder')[0].textContent = message.text;
var message = { text: 'Here is some text' }; document.getElementsByClassName('text-holder')[0].textContent = message.text;
<span class="text-holder"></span>
With jQuery: 使用jQuery:
var message = { text: 'Here is some text' }; $('.text-holder').text(message.text);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <span class="text-holder"></span>
With AngularJS: 使用AngularJS:
var app = angular.module('myApp', []); app.controller('myController', function($scope) { $scope.message = { text: 'Here is some text' }; });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app="myApp"> <div ng-controller="myController"> <span>{{message.text}}</span> </div> </div>
A simple solution using vanilla js (strictly since you didnt use the jquery
tag in your question) with working snippet: 一个简单的解决方案使用vanilla js(严格来说,因为你没有在你的问题中使用
jquery
标签)和工作片段:
function doAction() { var messageObj = { text: "Here is some text" } document.getElementsByTagName('span')[0].innerText = messageObj.text; }
<span>PLACEHOLDER</span> <button onclick="doAction()">do</button>
You can do it with using tag name. 您可以使用标记名称来完成。
document.getElementsByTagName('span').textContent(message.text);
OR can assign some class or id to the span 或者可以为span指定一些类或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);
Using jQuery,you can do like this 使用jQuery,你可以这样做
$(".my_id").text(message.text)
OR
$("#my_id").text(message.text)
If you're using plain HTML and vanilla JavaScript, then why should something else but message.text
appear within the span tags. 如果你使用普通的HTML和vanilla JavaScript,那么为什么除了
message.text
应该在span标签中出现。
Using just plain JavaScript you could do something like: 使用纯JavaScript,您可以执行以下操作:
var message = {
text: "Here is some text"
};
var spans = document.getElementsByTagName('span');
var el = spans[0];
el.innerText = message.text;
Here is a JSFiddle: 这是一个JSFiddle:
https://jsfiddle.net/k1q9jo5n/ https://jsfiddle.net/k1q9jo5n/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.