파이어 폭스 (21)와 인터넷에서 작동하지만, 아니에요 그것은 당신을 조금 도와줍니다 :
JsBin : http://jsbin.com/iyulaj/1/
지시어를 사용하여 입력 데이터를 가져 와서 구문 분석 한 다음 $scope
변수에 넣을 수 있습니다. 참조하십시오 : http://docs.angularjs.org/api/ng.directive:ngModel.NgModelController ($parsers
및 $formatters
. 나는 그것을에서 받았습니다 : Using angularjs filter in input element).
지시어는 쉼표를 검색하여 점으로 바꿀 수 있습니다. 그것은 다음과 같이 수 :
angular.module('MyModule').directive('numberinput', function() {
return {
restrict: 'A',
require: 'ngModel',
link: function(scope, element, attrs, ngModelController) {
ngModelController.$parsers.push(function(data) {
//convert data from view format to model format
return data.replace(',', "."); //converted
});
ngModelController.$formatters.push(function(data) {
//convert data from model format to view format
return data.replace('.', ","); //converted
});
// http://docs.angularjs.org/api/ng.directive:ngModel.NgModelController
}
};
});
입력 필드 :
<input ng-model='value' type='text' numberinput='' />
는 또한 입력이 이제 텍스트 필드 있습니다. 이것 좀 봐 : http://jsbin.com/iyurol/1/
입력은 숫자 필드입니다. 그러나 11,5
을 입력하면 ùndefined
가 출력됩니다 (독일에 거주하고 있으며 쉼표 표기법을 사용하고 있습니다). 따라서 쉼표 표기법을 사용하는 지역에 거주하고 있더라도 점 표기법이 아닌 브라우저는 숫자를 올바르게 '구문 분석'하지 않습니다.
에서 자세한 내용을 참조하십시오. – Lucas