删除ng-model中的ng-model输入值

时间:2015-03-25 11:05:49

标签: javascript angularjs angularjs-ng-repeat angular-ngmodel

我对ng-repeat中的ng-model有疑问。 我准备了一些例子。

https://jsfiddle.net/0ff3btv2/1/

Basicaly我可以在输入中创建ng-model并通过单击按钮删除其值:

   <ul ng-controller="deleteCtrl">
     <li>
       <input type="text" ng-model="valueModel" placeholder="enter value" />
       <input type="button" ng-click="deleteValue()" value="Delete" />
     </li>    
   </ul>

但是,使用ng-repeat并执行相同操作时,无法删除值。

<ul ng-controller="deleteRepeatCtrl">
  <li ng-repeat="element in data">
    <input type="text" ng-model="element.valueModel" 
                placeholder="{{element.firstName}}" />
    <input type="button" ng-click="deleteRepeatValue()" value="Delete"/>
  </li>    
</ul>

你能解释一下吗?

2 个答案:

答案 0 :(得分:1)

尝试这个而不是功能

<input type="button" ng-click="element.valueModel=null" value="Delete"/>

答案 1 :(得分:1)

如果你想这样做,只需将当前元素传递给控制器​​

 <input type="button" ng-click="deleteRepeatValue(element)" value="Delete"/>

        </li>    



   $scope.deleteRepeatValue = function(element){
        element.valueModel = '';
    };

Fiddle