如何使用货币设置输入类型数字字段的格式



我一直在尝试找到如何在角度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

最新更新