我正在處理HTML輸入字段,我需要允許用戶輸入數字量。如何在金額字段中添加十進制數字。 (0.00)
默認情況下,我需要顯示0.00,並且當用戶輸入金額時,例如, 25,我需要發送價值25.00。
我該如何做到這一點?
我正在處理HTML輸入字段,我需要允許用戶輸入數字量。如何在金額字段中添加十進制數字。 (0.00)
默認情況下,我需要顯示0.00,並且當用戶輸入金額時,例如, 25,我需要發送價值25.00。
我該如何做到這一點?
var x = 25
var twoDecPlaces = x.toFixed(2)
// returns "25.00"
$(".click").on('click', function() {
var val = $(".decimalInput").val();
var decVal = parseFloat(val).toFixed(2);
$(".decimalInput").val(decVal)
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input value=0.00 class='decimalInput'>
<button class='click'>
Click!
</button>
它需要多個小數我需要只允許一個。 – User123
你是什麼意思,你只需要一個?只有一個輸入? – philantrovert
下面是在更角JS方式溶液,限制用戶輸入只有兩個小數。
用戶不能輸入兩位以上的小數。也只有一個小數點
// Code goes here
var app = angular.module('myApp', []);
app.controller('formCtrl', function($scope) {
$scope.price = 0.00;
\t $scope.onSubmit = function()
\t {
\t
\t \t alert(parseFloat($scope.price).toFixed(2));
\t }
});
app.directive("validateWith", [function(){
return {
restrict: "A",
link: function($scope, $el, $attrs){
var regexp = eval($attrs.validateWith);
var origVal;
// store the current value as it was before the change was made
$el.on("keypress", function(e){
origVal = $el.val();
});
// after the change is made, validate the new value
// if invalid, just change it back to the original
$el.on("input", function(e){
console.log(regexp.test($el.val()))
if(!regexp.test($el.val())){
e.preventDefault();
$el.val(origVal);
}
});
}
}
}]);
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="style.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script>
<script src="script.js"></script>
</head>
<body>
<div ng-app="myApp" ng-controller="formCtrl">
<form name="myForm" ng-submit="onSubmit()">
<input type="number" ng-model="price" name="price_field" required validate-with="/^\d{1,5}(\.\d{1,2})?$/" step="0.01" value="0.00"/>
<span ng-show="myForm.price_field.$error.pattern">Not a valid number!</span>
<input type="submit" value="submit"/>
</form>
</div>
</body>
</html>
請運行該代碼段。
檢查出號'toFixed()'方法:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toFixed –
可能重複[在JavaScript中格式化數字,精確到兩位小數](http://stackoverflow.com/questions/1726630/formatting-a-number-with-exactly-two-decimals-in-javascript) – anu
我刪除了角度js標記因爲沒有代碼提及它。請添加相關代碼,然後添加角度js標籤。謝謝。 – Sid