Привет всем знатокам!
Подскажите в моем случае сделать проверку на пустые поля + правильность заполнения. Я в js совсем не силен, поэтому прошу у вас помощи товарищи. В данный момент делаю проверку следующим образом.
// проверка телефона и почты на правильность
function checkPhone(input) {
var RegPhone = new RegExp(/^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$/);
return RegPhone.test(input);
}
function checkEmail(input) {
var RegEMail = new RegExp(/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/);
return RegEMail.test(input);
}
// какой то код не влияющий на форму и т.д., далее сама форма в $(document).ready(function () {
$('form').submit(function () {
var FormObj = $(this);
var arFormData = FormObj.serializeArray();
var phone = FormObj.find('input[name="phone"]');
var email = FormObj.find('input[name="email"]');
if (phone.val() != '') {
if (checkPhone(phone.val())) {
phone.css({'border': '2px solid #28a745'});
} else {
phone.addClass('error');
phone.val('Введен не верный телефон');
setTimeout(function () {
phone.removeClass('error');
phone.val('');
}.bind(this), 2000);
}
} else {
phone.addClass('error');
phone.val('Введите ваш телефон');
setTimeout(function () {
phone.removeClass('error');
phone.val('');
}.bind(this), 2000);
}
if (email.val() != '') {
if (checkEmail(email.val())) {
email.css({'border': '2px solid #28a745'});
} else {
email.addClass('error');
email.val('Введен не верный E-Mail');
setTimeout(function () {
email.removeClass('error');
email.val('');
}.bind(this), 2000);
}
} else {
email.addClass('error');
email.val('Заполните поле E-Mail');
setTimeout(function () {
email.removeClass('error');
email.val('');
}.bind(this), 2000);
}
$.ajax({
type: "POST",
url: '/include/ajax.php',
data: {
'AJAX': 'Y',
'ACTION': 'REQUEST_ORDER_MAKE',
'DATA': arFormData
},
dataType: 'json',
timeout: 3000,
error: function (text, error) {
console.error('Error:' + text.ResponseText + ' | ' + error);
},
success: function ($data) {
$('.modal-result-text-l').html($data);
setTimeout(function () {
$('#modal-result-l').fadeIn();
$('#modal-result-l').addClass('open-l');
$('body').addClass('modal-open-l');
}.bind(this), 1000);
}
});
return false;
});
Понимаю, что код ужасный, помогите привести к божескому виду, чтоб было по феншую. Хотелось бы объединить условия проверки чтоб код был чуть короче (если возможно) и если поля прошли проверку, то разрешаем отправку запроса. Объясните как сделать, пример не помешает, если вас это не обременит!
С одним полем могу сделать, а если полей больше то там трабл у меня) Простите за очередной нубский вопрос!