输入最初被禁用,并且仅在条件等于 value=2 时才启用,然后如果您选择返回 value=1 输入将被禁用(一切都很好),但如何删除用户在输入中键入的值一旦再次禁用?.
http://jsfiddle.net/og4c4vzy/3/
<div ng-app>
<form action="" name="myForm">
<select name="id" id="" ng-model="selectVal">
<option value="1">Number 1</option>
<option value="2">Number 2</option>
</select>
<input ng-model="number" type="text" ng-pattern="/^[0-9]{1,7}$/" ng-disabled="selectVal != 2" ng-bind="selectVal">
</form>
</div>
最佳答案
您可以使用ng-change
来设置一个函数,当selectVal
的值被修改时将调用该函数。您可以在那里手动设置number=“”
这是一个骗子:http://plnkr.co/edit/asv9QnMmT5wSPW1ijvU5?p=preview
<form action="" name="myForm">
<select name="id" id="" ng-model="selectVal" ng-change="number=''">
<option value="1">Number 1</option>
<option value="2">Number 2</option>
</select>
<input ng-model="number" type="text" ng-pattern="/^[0-9]{1,7}$/" ng-disabled="selectVal != 2" >
<p ng-bind="number"></p>
</form>
关于javascript - 如果值不为 true,则删除禁用输入中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34229034/