我有以下问题,我使用ng-repeat生成几种形式, 我使用ng-model来捕获textarea值并且它工作得很好但是当我尝试在ng-repeat生成的表单内的textarea元素上写一些东西时,同时在所有textarea元素内复制文本。 / p>
有没有办法取消绑定那些ng模型?
<div ng-repeat="PostList in PostList">
<form id="PostFormComments" role="form">
<div class="row input-field">
<textarea data-ng-model="data.newComment" placeholder="write something?...." type=text></textarea>
</div>
<a name="action" ng-disabled="!data.newComment" data-ng-click="addCommentPost();" ng-class="clear" class="secondary-content btn-floating waves-effect waves-light light-blue darken-2"></a>
</form>
</div>
答案 0 :(得分:1)
你可以做的是使用$index
,它为你提供当前ng-repeat
的索引并创建一个对象并通过它访问它。
所以你会这样做:$scope.data = {}
然后你会得到如下形式:
<div ng-repeat="PostList in PostList">
<form id="PostFormComments" role="form">
<div class="row input-field">
<textarea data-ng-model="data[$index].newComment" placeholder="write something?...." type=text></textarea>
</div>
<a name="action" ng-disabled="!data[$index].newComment" data-ng-click="addCommentPost();" ng-class="clear" class="secondary-content btn-floating waves-effect waves-light light-blue darken-2"></a>
</form>
</div>
您会看到不同的textarea ng-models
由其$index
管理。