Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.07.2015, 22:41
Профессор
Отправить личное сообщение для imedia Посмотреть профиль Найти все сообщения от imedia
 
Регистрация: 20.05.2014
Сообщений: 292

Почкму 2 раза происходит отправка формы?
$(function(){
	
 
	
      $('#my_form').on('submit', function(e){
        e.preventDefault();
        var $that = $(this),
        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);
            }
          }
        });
		
		
		
      });
  
		var uploadButton = $('<button/>')
        .addClass('btn btn-primary')
        .text('Processing...')
		.on('click', function () {
		$('#my_form').submit();
		}) ; 
	
			function tstFile(val){
			var reg =new RegExp("^text/xml|x-json");
			var tst = val.match(reg);
			if (tst){
			return true;
			}
			return false;
			}

			$('#fileupload').change(function(e){
			var file=e.currentTarget.value
			var type=e.currentTarget.files[0].type
			var type_text=type==='text/xml'?'to JSON':'to XML'
			if(tstFile(type)){
			uploadButton.text(type_text)
				var node = $('<p/>')
                    .append($('<span class=""/>').text(file))
                    .append(uploadButton.clone(true));
           
            node.appendTo('#table_btn');
			}
			
			 
			})
	  });
Ответить с цитированием
  #2 (permalink)  
Старый 06.07.2015, 00:40
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

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);
          }
       });
     
}

Последний раз редактировалось Deff, 06.07.2015 в 00:53.
Ответить с цитированием
  #3 (permalink)  
Старый 06.07.2015, 10:48
Профессор
Отправить личное сообщение для imedia Посмотреть профиль Найти все сообщения от imedia
 
Регистрация: 20.05.2014
Сообщений: 292

да, спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
.js отправка формы marciy Общие вопросы Javascript 1 18.05.2014 21:55
отправка формы Moloch AJAX и COMET 12 12.03.2014 23:30
Отправка данных формы AJAX`ом? Jopses jQuery 4 20.02.2013 12:34
Отправка формы с помощью XMLHttpRequest2 и FormData pav jQuery 3 05.10.2011 10:16
Отправка из формы в форму.. gJam Элементы интерфейса 5 21.07.2011 11:42