我有一個文本字段,我只想在其中輸入數字。我用type =「number」,但我有一個問題,因爲我不能得到小數點。所以我使用了一個在線發現的指令來限制輸入的字母。不允許不必要的字符在字段中輸入
app.directive('onlyNum', function() {
return function(scope, element, attrs) {
var keyCode = [8,9,37,39,48,49,50,51,52,53,54,55,56,57,110];
element.bind("keydown", function(event) {
console.log($.inArray(event.which,keyCode));
if($.inArray(event.which,keyCode) == -1) {
scope.$apply(function(){
scope.$eval(attrs.onlyNum);
event.preventDefault();
});
event.preventDefault();
}
});
};
})
它工作正常,但我可以輸入字符,如@,$,!,#,&所以我on.How可以限制這些字符從投入也。
注意,您可以用element.on做到這一點我的自定義指令(「的keydown」,...然後對於允許的鍵返回true,否則返回false。不需要$ apply,$ eval,event,preventDefault等 – Sam 2015-03-31 10:34:45
http://stackoverflow.com/questions/19036443/angularjs-how-to-allow-only- a-number-digits-and-decimal-point-to-be-typed-in – ABOS 2015-04-10 09:43:47