正在进行金额验证:
/^(([1-9]\d{0,8})(\.\d{0,2})?|(\.\d{0,2})?)/g;
这个正则表达式适用于这些条件:
OR(|)
条件,它在开头接受小数点,之后它只接受2位数。有没有人告诉我,如果我在开头输入小数点,它会在小数点前自己添加一个零(0)作为前缀。
答案 0 :(得分:0)
您需要的是一个事件处理程序,如下所示。如果你把"。"并输入一些数字,它将以" 0"为前缀。现在这包括9位数的验证 - 。 - 2位数
function addZero(handle) {
if (handle.value[0]==".") {
handle.value = "0"+handle.value;
}
}
function checkAmount() {
var curAmt = document.getElementById("amount").value;
if (!/^(([0-9]{0,9}\.[0-9]{0,2})|([0-9]{0,9}))$/.test(curAmt)) {
alert("Enter valid amount");
}
else {
alert("Amount is valid");
}
}

<input id="amount" type="text" onkeypress="addZero(this)">
<input type="submit" onclick="checkAmount()">
&#13;
答案 1 :(得分:0)
要添加前导零,您可以使用标准JavaScript功能:
var input = '.15';
var formatted = Number(input).toFixed(2);
$('#result').text( formatted );
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="result"></div>
&#13;