自动验证输入框并矫正输入值,将js引入页面中,并在要添加验证的输入框中添加相应class
1、class =‘percentage’ ,验证是否为百分比,要求输入0-100范围内的整数。
$('body').on('keyup blur', '.percentage', function (even) {
if(even.keyCode>=37&&even.keyCode<=40){
return false;
}
e = $(this);
if (!/^(?:100|[1-9][0-9]?|0)$/.test(e.val())) {
e.val(/100|[1-9][0-9]?/.exec(e.val()));
if (e.val() == "") {
e.val(0);
}
}
});
2、class =‘number’ ,验证是否为整数。
$('body').on('keyup blur', '.number', function (even) {
if(even.keyCode>=37&&even.keyCode<=40){
return false;
}
e = $(this);
if (!/^([1-9]\d*|0)$/.test(e.val())) {
e.val(/[1-9]\d*/.exec(e.val()));
if (e.val() == "") {
e.val(0);
}
}
});
2、class =‘price’ ,验证是否为价格,保留两位小数。
$('body').on('keyup blur ', '.price', function (even) {
if(even.keyCode>=37&&even.keyCode<=40){
return false;
}
e = $(this);
var price =e.val();
if(!/^(([1-9]\d*[.]\d\d?)|([0][.]\d\d?)|([1-9]\d*)|0)$/.test(price)){
price= /[1-9]\d*[.]\d\d?/.exec(e.val());
price=price?price:/[0][.]\d\d?/.exec(e.val());
price=price?price:/[1-9]\d*/.exec(e.val());
price=(price=='' || price==null?0:price);
price=/^[^.]+[.]$/.test(e.val())?price+".":price;
e.val(price);
}
});