本文提供一段JavaScript校验价格合法性的完整实例,重点实现必须输入两位小数的限制。通过正则表达式匹配正数及最多两位小数的格式,结合jQuery监听按钮点击事件,自动检测输入框是否为空或格式错误,并给出相应提示。
HTML页面结构实现
HTML结构如下:
具体实现代码:
用户输入价格:
<input type="text" id="txtProPrice" />
<input type="button" value="验证输入" id="btnTest" />JavaScript校验逻辑与正则表达式
JavaScript逻辑:
具体实现代码:
<script src="jquery.js">
</script>
<script type="text/javascript" language="javascript">
function ckProPrice() {
//验证商品金额
var reg = /(^[-+]?[1-9]\d*(\.\d{1,2})?$)|(^[-+]?[0]{1}(\.\d{1,2})?$)/;
if ($("#txtProPrice").val() == "") {
alert("商品金额不可为空!");
return false;
} else {
if (!reg.test($("#txtProPrice").val())) {
alert("价格必须为有效数值(正数,限两位小数)!");
return false;
} else {
alert("格式正确!yige.org");
return true;
}
}
}
$(function() {
$("#btnTest").click(function() {
ckProPrice();
});
});
</script>