使用javascript/jQuery验证输入类型编号
我有一个输入框,只需要接受数字使用javascript/jQuery验证输入类型编号,javascript,jquery,validation,numbers,Javascript,Jquery,Validation,Numbers,我有一个输入框,只需要接受数字 我使用的是javascript,效果很好,但问题是: 当框为空或删除数字时,返回false,框颜色变为红色 以下是代码: <input id="amount" type="number" size="7" name="amount" onkeypress='return isNumberKey(event)' required/> <script type="text/javascript"> function isNumbe
javascript
,效果很好,但问题是:
当框为空或删除数字时,返回false,框颜色变为红色<input id="amount" type="number" size="7" name="amount" onkeypress='return isNumberKey(event)' required/>
<script type="text/javascript">
function isNumberKey(evt){
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
</script>
函数isNumberKey(evt){
var charCode=(evt.which)?evt.which:event.keyCode
如果(字符码>31&(字符码<48 | |字符码>57))
返回false;
返回true;
}
函数demoMatchClick(){
var re=new RegExp(“^[0-9]+$”);
var val=document.GetelementByID(“金额”).value;
如果(val.match(re)){
警报(“成功匹配”);返回true;
}否则{
警告(“不匹配”);返回false;
}
}
检查此验证代码:
阅读正则表达式:谢谢,先生,但我不允许用户写数字以外的字符。如果我在Validating函数中使用,我应该定义新的警报等。第一个脚本工作正常,但不适用于空框。
<script type="text/javascript">
function demoMatchClick() {
var re = new RegExp("^[0-9]+$");
var val=document.GetelementByID("amount").value;
if (val.match(re)) {
alert("Successful match");return true;
} else {
alert("No match"); return false;
}
}
</script>
$(document).ready(function(){
$("#Submit").click(function(e){
var isNumber = IsNumberOnly('input#Age');
if(!isNumber)
{
e.preventDefault();
$("#ErrorMessage").text('Invalid value. Please enter numeric value.');
}
else
{
$("#ErrorMessage").text('Success.');
}
});
});
function IsNumberOnly(element) {
var value = $(element).val();
var regExp = "^\\d+$";
return value.match(regExp);
}