我正在使用angularjs,我想格式化输入中的数字显示
要显示具有特定格式的简单值,我会这样做:
{{myValue:number:2}}
,
但有一个输入:
<input type="text" ng-model ="myValue"/>
我不知道该怎么做
如果我做 :
<input type="text" ng-model ="myValue|number:2"/>
我收到了错误消息:
错误:[ngModel:nonassign]表达式'myValue | number:2'是 不可转让。元素:
谢谢。
答案 0 :(得分:0)
我尝试使用普通的javaScript方法,以达到您的要求。
我在ng-change="floatNumber(mynumber)"
中添加了input
,因此在每次更改时,该功能都会触发并在那里进行计算:
<input type="text" ng-model="mynumber" ng-change="floatNumber(mynumber)">
$scope.floatNumber = function(mynumber) {
var retNum = '';
if (mynumber.indexOf('.') > 0) {
var splitNum = [];
splitNum = mynumber.split('.');
//if (splitNum[1].length === 0)
//retNum = mynumber + '00';
if (splitNum[1].length === 1) {
retNum = mynumber + '0';
$scope.mynumber = retNum;
}
}
};
Sample Plunker:http://plnkr.co/edit/YyTqc28c23ccITQGshAX?p=preview