Bài viết này hướng dẫn cách kiểm tra dữ liệu nhập có phải là số di động ở Việt Nam hay không bằng cách kiểm tra đầu số và số lượng chữ số được nhập.
Lưu ý: phương thức này chỉ kiểm tra tính đúng sai của dữ liệu nhập, không kiểm tra được số điện thoại là có thực hay không.
Phương thức
Chúng ta sẽ kiểm tra đầu số 08 và 09 là 10 chữ số và 01 là 11 chữ số. Thêm function
này vào tập tin .js
:
function checkPhoneNumber(phone) {
var flag = false;
phone = phone.replace('(+84)', '0');
phone = phone.replace('+84', '0');
phone = phone.replace('0084', '0');
phone = phone.replace(/ /g, '');
if (phone != '') {
var firstNumber = phone.substring(0, 2);
if ((firstNumber == '09' || firstNumber == '08') && phone.length == 10) {
if (phone.match(/^\d{10}/)) {
flag = true;
}
} else if (firstNumber == '01' && phone.length == 11) {
if (phone.match(/^\d{11}/)) {
flag = true;
}
}
}
return flag;
}
Sử dụng
Bạn có thể kiểm tra ở sự kiện Submit:
$('#form').submit(function(e) { // ID của Form
var phone = $('#input').val().trim(); // ID của trường Số điện thoại
if (!checkPhoneNumber(phone)) {
$('#input').parents('div.form-group').addClass('has-error'); // ID của trường Số điện thoại
$('#input').focus(); // ID của trường Số điện thoại
e.preventDefault();
}
});
$('#input').keypress(function() { // ID của trường Số điện thoại
$(this).parents('div.form-group').removeClass('has-error');
});
Bài viết có sử dụng Validation states của Bootstrap để thông báo lỗi. Chúc các bạn thành công!
Không có bình luận.