パーサとフォーマッタを使用してディレクティブを作成する必要があります。パーサ関数は、表示された値をスペースで数値に変換し、フォーマッタ関数は数値を表示されたテキストに変換します。
ような何か:
angular.module('app').directive('formattedNumber', formattedNumber);
function formattedNumber() {
var directive = {
restrict: 'A',
require 'ngModel',
link: link
};
return directive;
function link(scope, element, attrs, ngModelController) {
ngModelController.$parsers.push(parseNumber);
ngModelController.$formatters.push(formatNumber);
}
function parseNumber(viewValue) {
// convert text with spaces to number and return it.
}
function formatNumber(modelValue) {
// convert numeric modelValue to formatted text and return it.
}
}
それからちょうど:
<input type="number" name="price" ng-model="ctrl.form.price"
formatted-number required>
Shoulndあなたが入力タイプ= "テキスト" を使用していますか?そして、数字だけに制限したい場合は、それに適切な関数を使用しますか? –
@GustavoGabriel、これの基本的な例を教えてください。 –