2014-03-19 78 views
1

我需要更新一個輸入,使得如果是整數,則需要添加2個零。在AngularJS中添加兩個十進制數

輸入:12 輸出:12.00 (在相同的輸入文本)

<body ng-app=""> 
    <script> 
    function Controller($scope) { 
     $scope.change = function() { 

     }; 
    } 
    </script> 
    <div ng-controller="Controller"> 
    <input type="text" ng-model="value" ng-change="change()" /> 
    {{value | number:2}} 
    </div> 
</body> 

它可能$ scope.change內完成,但還需要更多的代碼。 有沒有更直接的方法來實現它?如{{value | 2號}}。

在此先感謝。

回答

2

我想你已經明白了。 Angular提供了一個default filter number。它的工作原理爲:

{{val | number:<fractionsize>}} 

如果這個數字將代表貨幣,可以考慮使用currency filter

編輯:使用過濾器也可能是您的代碼的可維護性的一個好主意,因爲它分開獲取數據格式化。

+0

嗨,我需要的是自動更新相同的輸入,但在小數點是整數的情況下。 – JohnPortella

+0

您可以嘗試綁定事件以在每次輸入更改時應用數字過濾器;你可以使用[this plunker](http://plnkr.co/edit/R1yf6dJSf1ieYRX0B4P0?p=preview)作爲起點。但是,您可能會注意到在該示例中,添加數字有一些奇怪的行爲。你最好的選擇可能是編寫一個自定義指令來處理你的輸入。 –

+1

感謝您的幫助,這是我的最終代碼:http://jsfiddle.net/vfsHX/232/ – JohnPortella