我使用這個代碼驗證電話號碼:電話驗證工作不正常
<script>
$("#Phone").keydown(function (e) {
// Allow: backspace, delete, tab, escape, enter and .
if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
// Allow: Ctrl+A
(e.keyCode == 65 && e.ctrlKey === true) ||
// Allow: home, end, left, right, down, up
(e.keyCode >= 35 && e.keyCode <= 40)) {
// let it happen, don't do anything
return;
}
// Ensure that it is a number and stop the keypress
if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 57)) && (e.keyCode < 96 || e.keyCode > 105)) {
e.preventDefault();
}
});
var val = Phone.value
if (/^\d{11}$/.test(val)) {
// value is ok, use it
} else {
alert("Invalid number; must be eleven digits")
Phone.focus()
return false
}
</script>
我希望用戶僅輸入11位數字,如果不是這樣,它會提醒他們有用戶輸入11位數字並將該值設置爲空。
問題是,當它提醒數字小於11位數字時,它不會將該值設置爲空。
什麼值應該設置爲空?您的代碼將值設置爲null的位置在哪裏? –
我也試了this.value =「」;但它不起作用! – Sean
無論用戶輸入什麼,如果它不是11位數,那麼它應該將該值設置爲無。 – Sean