Хочу переделать обработчик формы
чтобы страничка не перегружалась
сделал с использованием ajax, отправляет корректно
только одна проблема с валидацией
ругается на неправильно заполненные поля
но форму все равно отправляет
а нужно чтобы не отправляла до тех пор, пока не будет корректно заполнена форма
<input class="button btn-order order-btn" type="submit" value="Заказать">
$(document).ready(function() {
var sel_phone = $('input[name=phone]');
sel_phone.mask('+38 (000) 000-00-00');
if (sel_phone.val().length < 3) sel_phone.val('+38');
sel_phone.on('focus, focusout', function () {
if ($(this).val().length < 3) $(this).val('+38');
});
$('form').submit(function() {
$('input[name=name]', this).val($.trim($('input[name=name]', this).val()));
if(!$('input[name=name]', this).val()) {
alert('Укажите корректные ФИО!');
return false;
}
if(!$('input[name=phone]', this).val() || $('input[name=phone]', this).val().length < 18) {
alert('Укажите корректный телефон!');
return false;
}
return true;
});
$('a.order-btn').click(function(valida) {
$(this).closest('form').submit();
return false;
});
});
а это обработчик
$(function(){
$('form').submit(function(e){
e.preventDefault();
var m_method=$(this).attr('method');
var m_action=$(this).attr('action');
var m_data=$(this).serialize();
$.ajax({
type: m_method,
url: m_action,
data: m_data,
success: function(result){
$('#result').show();
}
});
});
});