使用ng-model在零时消隐,是可能的吗?

时间:2017-07-24 12:45:20

标签: angularjs

如果vm.agentCommission为0,那么我希望该字段为空,因此用户无需在键入前删除零。

我试过了:

 <input ng-model="vm.agentCommission ? '' : vm.agentCommission" ....

但我明白了:

Expression 'vm.agentCommission ? '' : vm.agentCommission' is non-assignable.

有没有办法以角度来做这个?

2 个答案:

答案 0 :(得分:0)

使用ng-change

中的三元操作
ng-change="(vm.agentCommission === '0') ? vm.agentCommission = '' : vm.agentCommission"

&#13;
&#13;
angular.module("app",[])
.controller("ctrl",function($scope){
 var vm = this;
 //vm.agentCommission = "";

})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="ctrl as vm">
<input ng-model="vm.agentCommission" ng-change="(vm.agentCommission === '0') ? vm.agentCommission = '' : vm.agentCommission"> 
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

<input ng-model="vm.agentCommission > 0 ? vm.agentCommission  : '' " >

我改变了你的代码位。请检查一下是否有效。