// Валидация формы на странице оформления заказа $("#quickform").submit(function(){ // Если форма невалидна не отправляем её на сервер if(!$(this).valid()) { return false; } // Получаем данные формы, которые будем отправлять на сервер var formData = $(this).serializeArray(); // Сообщаем серверу, что мы пришли через ajax запрос formData.push({name: 'ajax_q', value: 1}); // Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара $.ajax({ type : "POST", dataType: 'json', cache : false, url : $(this).attr('action'), data : formData, success: function(data) { // Если заказ был успешно создан if( data.status == 'ok' ) { window.location = data.location; } else if( data.status == 'error' ) { alert(data.message); } else { alert('Во время оформления заказа возникла неизвестная ошибка. Пожалуйста, обратитесь в службу технической поддержки.'); } } }); return false; }).validate();на
// Валидация формы на странице оформления заказа $("#quickform").submit(function(){ // Если форма невалидна не отправляем её на сервер if(!$(this).valid()) { return false; } // Получаем данные формы, которые будем отправлять на сервер var formData = $(this).serializeArray(); // Сообщаем серверу, что мы пришли через ajax запрос formData.push({name: 'ajax_q', value: 1}); var $btn = $("#quickform").find('button[type="submit"]') // Аяксом добавляем товар в корзину и вызываем форму быстрого заказа товара $.ajax({ type : "POST", dataType: 'json', cache : false, url : $(this).attr('action'), data : formData, timeout: 3000, beforeSend: function() { $btn.addClass('disabled').html('Оформляется') }, success: function(data) { // Если заказ был успешно создан if( data.status == 'ok' ) { window.location = data.location; } else if( data.status == 'error' ) { alert(data.message); $btn.removeClass('disabled').html('Оформить заказ') } else { alert('Во время оформления заказа возникла неизвестная ошибка. Пожалуйста, обратитесь в службу технической поддержки.'); } }, error: function() { $btn.removeClass('disabled').html('Оформить заказ') } }); return false; }).validate();
в main.css добавить строку
.button.disabled {opacity: 0.7;cursor: default; pointer-events: none;}