0
入力フィールドの数値をi.e 2500 becomes 2,500
に変更し、modal
に適用すると整数として解析するよりAngularJSフィルタが出回っています。入力フィールドにカンマと小数点を入力するAngularJS
小数点を追加してユーザーの書式設定を維持できるかどうか疑問に思ったので、2500.24
は2,500.24
になります。
angular.directive('format', function ($filter) {
'use strict';
return {
require: '?ngModel',
link: function (scope, elem, attrs, ctrl) {
if (!ctrl) {
return;
}
ctrl.$formatters.unshift(function() {
return $filter('currency')(ctrl.$modelValue, '', 2);
});
ctrl.$parsers.unshift(function (viewValue) {
var plainNumber = viewValue.replace(/[\,]/g, ''),
b = $filter('currency')(plainNumber, '', 2);
elem.val(b);
return plainNumber;
});
}
};
});
そして、私が使用するパターンは次のとおりです:
スクリプトは以下の通りである
<input format pattern="[0-9]+([\.,][0-9]+)*" />