似乎在angularjs中禁用输入或选择时,模型值保持不变。我的问题是这与HTML中的本机表单行为不同,并且我必须通过ng-change
作用域方法调用一些额外的行为才能获得正确的行为,这是为了设置值如果禁用输入或选择输入,则为null。
这是我的例子:
<div ng-app="myApp">
<select ng-disabled="disableIt" ng-model="data">
<option>1</option>
<option>2</option>
</select>
<input type="text" ng-model="textData" ng-disabled="disableIt" />
<br />
<input type="checkbox" ng-model="disableIt"/>
<br />
Select Data: {{selectData}}
<br/>
Text Data: {{textData}}
</div>
<script>
var myApp = angular.module('myApp',[]);
myApp.run(function($rootScope){
$rootScope.selectData = 1;
$rootScope.textData = "test";
});
</script>
你可以在jsfiddle上测试它:http://jsfiddle.net/9wbtnhno/1/
所需的结果是textData
和selectData
模型在禁用时为空。