一组HTML输入控件绑定到testVar:
<div ng-app>
<div ng-controller="TestCtrl">
<input type="text" ng-model="testVar">
<input type="number" min="1" max="10" ng-model="testVar">
<input type="range" min="1" max="10" ng-model="testVar">
<button ng-click="testVar = 5">set to 5</button>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
最初所有输入控件都按预期显示此值,但是当通过type ="range"或type ="text"输入更改testVar时,type ="number"输入变为空白.以编程方式设置testVar的值会导致预期的行为:所有输入都显示更新的值.
这个简单的案例证明了这个问题:http://jsfiddle.net/7cbYp/
为什么会发生这种情况,如何解决?