尝试将文本动态添加到同一范围。已经生成了一个id的索引,以便根据索引思想添加文本。
这是我尝试过的。 预期的输出是我需要再创建一个具有相同id但不同索引的span,并将我的数组值附加到带索引值的span。
预期输出示例:
<span id="test-0">test</span>
<span id="test-1">Demo</span>
HTML:
<span id="test-{{$index}}"></span>
JS:
var arr = [{"Name":"test"},{"Name":"Demo"}];
for(var i=0; i<arr.length;i++){
txt = arr[i].Name;
$('#test-'+i).text(txt);
}
尝试演示: Demo Link
答案 0 :(得分:2)
试试这个:
$('#test-'+i).text(txt);
答案 1 :(得分:2)
在text()
函数
$('#test-'+i).text();
到
$('#test-'+i).text(txt);
答案 2 :(得分:0)
试试这个:您可以div
添加span
,其中包含来自数组的动态ID和文本。
HTML -
<div id="test"></div>
javascript: -
var arr = [{"Name":"test"},{"Name":"Demo"}];
var $text = $('#test');
for(var i=0; i<arr.length;i++){
$text.append('<span id="test-'+i+'">'+arr[i].Name+'</span>');
}
<强> JSFiddle DEMO 强>
答案 3 :(得分:0)
您可以使用字符串构建器,例如:
var arr = [{ "Name": "test" }, { "Name": "Demo" }];
for (var i = 0; i < arr.length; i++) {
txt = arr[i].Name;
document.write("<span id=test-" + i + ">" + txt + "</span>");
}
答案 4 :(得分:0)
你给的小提琴是错的。编辑如下。
var arr = [{"Name":"test"},{"Name":"Demo"}];
for(var i=0; i<arr.length;i++){
//append existing text to new value from array
var txt = $('#test'+i).text() + arr[i].Name;
$('#test'+i).text(txt);
}
答案 5 :(得分:0)
如果你真的想使用棱角分明,那你就错了。 Angular不能很好地与其他地方添加的html元素一起使用,它们必须先编译,因此angular可以绑定到它们。在这种情况下,您可以使用ng-repeat
将列表绑定到一系列跨度:
<span ng-repeat="item in [100, 200, 300, 400]" id="test-{{$index}}">
Index is {{$index}}<br/>
</span>
您还需要在小提琴中加入角度,并使用ng-app
标记(fiddle)。使用angular你也会有一个命名控制器,并在范围内为你的数组设置一个属性,但如果这个问题,那就超出了界限。