我试图在我的ng-repeat中为我的div设置一个动态id。让我举个例子。
<div id="$index" ng-repeat="repeat in results.myJsonResults">
<div id="$index" ng-click="saveID($index)" ng-repeat="subRepeat in results.myJsonResults.subresults">
</div>我的问题是,当我点击我的孩子div时,我想获得我的父id名称,但看起来angular没有正确地将ID设置为div。在这个概念中可以设置动态ID吗?
PS:在过去,我尝试在我的控制器上创建一个计数器方法,并设置一个索引,但结果是angular只识别这个ID的最后一个值。
发布于 2013-03-09 03:33:53
要回答您的问题,请尝试以下操作:
<div id="{{$index}}" ...>虽然上面应该可以工作,但这可能不是您真正想要的(!)。请注意,在AngularJS中,通过id引用元素来操作元素的情况非常少见。
你应该专注于你的模型,声明性的describe UI,让AngularJS来做剩下的事情,而不是“手工”做低级的DOM操作。
发布于 2013-09-12 05:15:46
我能想到的一个用例是将<label>元素与它们各自的<input>元素相关联,如http://jsfiddle.net/YqUAp/中所示
应用的是a pkozlowski.opensource方法。
<label for="{{ 'textField-' + $index }}">Option {{ $index }}</label>
<input type="text" id="{{ 'textField-' + $index }}" ng-model="field"/>虽然我不确定这是不是最有效的方法。(即使只是为了可读性)
发布于 2015-05-21 16:09:43
<div id="{{$index}}" ...>工作得很好,但如果-例如- subRepeat将有一个id字段,您也可以将一个动态id与该字段重复放入。这将是:
<div id="subRepeat{{subRepeat.id}}" ...>这将把像subRepeat1,subRepeat2,这样的ids。在您重复的div上
https://stackoverflow.com/questions/15301746
复制相似问题