imedia,
1. Я бы не стал ставить кнопку submit в форму, а поставил бы
<button id="sub" type="button">Отправить</button>
И поставил бы вместо
.on('submit', function(e){
$('#sub').click(function(){
2. Достаточно часты попытки нажать кнопку(submit или button) несколько раз, - ставить на данное событие флаг и проверять на входе события - если установлен - проваливаемся в return;
Если нет - устанавливаем флаг и отправляем аяксом, далее добавляем функцию завершения отправки Аяксом, где и сбрасываем флаг(можно с секундной задержкой, дабы наверняка два раза не кликали,
3. При отправки аяксом выводить гифку работы uloads и удалять по завершении Аякса и сбросу флага
==================
Нафига вот эта фигня ?
Цитата:
|
.on('click', function () {
32 $('#my_form').submit();
33 }) ;
|
Если именно тут и нун вставить функцию обработки и отправки формы аяксом ? ajaxFormSubmit()
var busy = false
function ajaxFormSubmit(){
if(busy) return false;
busy = true;
var $that = $('#my_form'),
formData = new FormData($that.get(0));
formData.append('date_upl', new Date()); // добавляем данные, не относящиеся к форме. У нас - это дата
$.ajax({
url: $that.attr('action'),
type: $that.attr('method'),
contentType: false,
processData: false,
data: formData,
dataType: 'json',
success: function(json){
if(json){
$that.replaceWith(json);
}
setTimeout(function(){busy = false;},1000);
}
});
}