提供了一个div类型的HTML元素,如何设置其id属性的值,这是一个范围变量和字符串的连接?
当前回答
ngAttr指令在这里完全有帮助,正如官方文档中介绍的那样
https://docs.angularjs.org/guide/interpolation#-ngattr-for-binding-to-arbitrary-attributes
例如,要设置div元素的id属性值,以便它包含一个索引,视图片段可能包含
<div ng-attr-id="{{ 'object-' + myScopeObject.index }}"></div>
哪个会被插值
<div id="object-1"></div>
其他回答
您可以简单地执行以下操作
在你的js中
$scope.id = 0;
在模板中
<div id="number-{{$scope.id}}"></div>
它会渲染
<div id="number-0"></div>
没有必要在双花括号内连接。
只要<input id="field_name_{{$index}}" />
如果你使用这个语法:
<div ng-attr-id="{{ 'object-' + myScopeObject.index }}"></div>
Angular会渲染如下内容:
<div ng-id="object-1"></div>
但是这种语法:
<div id="{{ 'object-' + $index }}"></div>
将生成如下内容:
<div id="object-1"></div>
这个方法对我很有效:
<div id="{{'object-' + $index}}"></div> .
如果你遇到这个问题,但涉及到较新的Angular版本>= 2.0。
<div [id]="element.id"></div>