【发布时间】:2016-03-17 23:26:05
【问题描述】:
请参考plunker。 http://plnkr.co/edit/EzMmIUYSa11Pl6vbwV7o?p=preview
如您所见,有两个输入字段,每个字段前面都有一个描述。
目前它允许用户同时允许正值和负值。我希望它在第一个字段中只允许范围为 0 到 10 的正值和范围为 -1 到 0 的负值。
我怎样才能在这里实现这个目标?有人可以帮忙吗?
HTML 代码
<div ng-controller="MainCtrl">
Positive from 0 to 10 only<input type="text" ng-model="amount" format="number" /><br><br>
Negative from -1 to 0 only<input type="text" ng-model="amount1" format="number" />
</div>
JS代码
var app = angular.module('App',[]);
app.controller('MainCtrl', function ($scope) {
});
app.directive('format', ['$filter', function ($filter) {
return {
require: 'ngModel',
link: function (scope, elem, attrs, ctrl) {
if (!ctrl) return;
ctrl.$formatters.unshift(function (a) {
return $filter(attrs.format)(ctrl.$modelValue);
});
ctrl.$parsers.unshift(function (viewValue) {
var plainNumber = viewValue.replace(/[^\d|\-+]/g, '');
elem.val($filter('number')(plainNumber/100,2));
return plainNumber;
});
}
};
}]);
【问题讨论】:
标签: javascript jquery html angularjs validation