通过对象值设置angularjs ng-model值

时间:2017-03-04 19:27:16

标签: angularjs

我的html端有输入文字,

   <input ng-model="item.valueProperty"
       ng-disabled="item.options.length>0"
       type="text"
       placeholder="List item value"
       class="form-control"
       required>

如果item.options数组包含任何项目,我的文本框值(item.valueProperty)将设置为key 但我希望通过ng-指令在html端进行此操作。

我无法在javascript控制器上设置它。这有可能吗?

1 个答案:

答案 0 :(得分:2)

我认为这就是你想要的

angular.module('test', [])
  .controller('test', function ($scope) {
    $scope.item = {
      valueProperty: 'Test',
      options: [1]
    };
  });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="test" ng-controller="test">
<input ng-model="item.valueProperty"
       ng-disabled="item.options.length > 0 ? item.valueProperty='key' : false"
       type="text"
       placeholder="List item value"
       class="form-control"
       required>
</div>

如果item.options.length&gt;我只是将$ scope.item.valueProperty设置为'key'。在ng-disabled指令中为0,item.options.length > 0 ? item.valueProperty=123 : false是一个有效的表达式,因此它可以工作。