在使用angularJs和input type="number"时,我遇到了一个奇怪的问题。基本上,如果我的输入类型为数字,并且初始值超出了由最小值和最大值定义的范围,那么我的初始值将被简单地销毁。
我制作了一个演示该问题的fiddle - http://jsfiddle.net/PK3QH/2/
HTML:
<div ng-controller="MyCtrl">
<input ng-model="bindData.SomeAmount" type="number" required="required" />
<br />
<input ng-model="bindData.SomeAmount" type="number" required="required"
min="2" max="10" />
</div>
Javascript:
var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
$scope.bindData = {
SomeAmount: 1
};
}
如您所见,第一个文本框可以正常工作,但是第二个文本框根本没有显示值。我肯定需要保留该值,并在一定范围内验证其为数字 - 那么有没有什么方法可以解决这个问题呢?
min
和max
属性呢? - Blackhole