我一直在尝试找到如何在角度input type="number"
字段中添加逗号的示例。我所看到的一切都使用type="text"
.问题是我需要保留数字字段的轮子。
是否有可能解决此问题?我见过一些仅适用于chrome的css黑客。
我需要所有浏览器才能工作。
我遇到了一个类似的例子,介绍如何向角度输入类型="数字"字段添加逗号。
试试下面的例子,我没有尝试过,但它看起来很有希望
您可以使用此示例根据需要创建指令http://blog.krusen.dk/angularjs-decimals-browsers/
这不是您原始问题的答案,因为我不知道您是否可以在数字字段中插入逗号和货币符号。与其将其保留为数字字段,不如尝试一下,也许它会有所帮助:
允许文本,并将用户输入限制为仅数字。
<input type="text" ng-model="value" numbers-only/>
命令:
.directive('numbersOnly', [
function(){ // limit the input field to numbers only, but retain value as string. Note do not use on type=number input field
return {
require: 'ngModel',
link: function(scope, element, attrs, modelCtrl) {
modelCtrl.$parsers.push(function (inputValue) {
var transformedInput = inputValue;
transformedInput = transformedInput.replace(/D/g,'');
if(transformedInput)
transformedInput = parseInt(transformedInput)+"";
if (transformedInput!=inputValue) {
modelCtrl.$setViewValue(transformedInput);
modelCtrl.$render();
}
return transformedInput;
});
}
};
}
])
http://plnkr.co/edit/zLj34V7v7xICyfGnlg3k?p=preview