2017-03-04 82 views
0

我有我的HTML端输入文本NG-模型值,设置angularjs由对象值

<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控制器上设置它。这可能吗?

+0

你能解释一下你面临的问题吗? – Ved

+0

按选项长度设置输入值。如果item.valueProperty的项目值为“key” – barteloma

+0

,那么item.valueProperty的值为“key”? – Ved

回答

2

我认为这是你wantL什么

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>

我只设置$ scope.item.valueProperty以 '钥匙',如果item.options.length> 0 NG-禁用指令,item.options.length > 0 ? item.valueProperty=123 : false是一个有效的表达式,所以它会起作用。

+0

是的,这是感谢,所以我学会了在HTML端设置模型值。 – barteloma

+0

是的,但似乎是一个不好的做法,尝试使用控制器。好好享受! –