我有一个通过 ng-repeat 创建的禁用输入字段列表 Plunker
<ul>
<li ng-repeat="name in names">
<input type="text" disabled value="{{name.item}}"/>
</li>
</ul>
如何使第一个输入字段不被禁用? 提前致谢
最佳答案
您可以使用 ng-disabled并检查 ng-repeat指令的 $first
变量:
<ul>
<li ng-repeat="name in names">
<input type="text" ng-disabled="!$first" value="{{name.item}}"/>
</li>
</ul>
您可以类似地检查 $middle
、$last
、$even
和 $odd
。如果您使用 $index
,您可以检查任意行索引。
由于 ng-repeat
创建了一个独立的范围,在嵌套的 ng-repeat
的情况下,如果您只想启用第一个父级中的第一个项目,相关代码如下所示:
<div ng-repeat="item in items">
<ul>
<li ng-repeat="name in names">
<input type="text" ng-disabled="!$parent.$first || !$first" value="{{name.item}}"/>
</li>
</ul>
</div>
通过内部 ng-repeat
的 $ 访问外部作用域的
变量。我创建了一个 fork of your Plunker这说明了如何做到这一点。$first
(或 $index
)变量父
关于javascript - 从 ng-repeat 访问第一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29500436/