我有一个表单页面,ppl可以在其中输入详细信息然后提交。 有一个电话领域,我使用下面的代码,它的工作正常所有的电脑,手机,ipads除了Android手机。
即使用户只键入数字,它也会显示警告错误。有人可以帮忙吗?
$("#phone").keydown(function (e) {
if($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
(e.keyCode === 65 && (e.ctrlKey === true || e.metaKey === true)) ||
(e.keyCode >= 35 && e.keyCode <= 40)) {
return;
}
if((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 ||
e.keyCode > 105)) {
e.preventDefault();
$.alert({ title: ' ', content: 'PHONE NUMBER MUST BE NUMBER FORMAT
ONLY.', type: 'red', typeAnimated: true, }); return false;
}
});
答案 0 :(得分:0)
考虑使用正则表达式验证电话号码。
$("#phone").on('keyup', function (e) {
var val = this.value;
// check value has non numeric characters
if (!/^[0-9]*$/.test(val)) {
$.alert({ ... });
// remove non numeric characters from value
this.value = val.replace(/[^0-9]+/g, '');
}
});