Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.09.2017, 21:17
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

Перехват формы
Господа, ситуация следующая, есть форма, которая отправляется методом POST. Мне нужно, чтобы еще все данные формы отправлялись аяксом. Пробовал просто повесить отправку аякса по нажатию на кнопку - не отправляется. Как правильно сделать?
Ответить с цитированием
  #2 (permalink)  
Старый 12.09.2017, 22:15
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,144

Decode,
$(function() {
$( "form" ).submit(function( event ) {
 event.preventDefault();
$.ajax({

  url: " ",

  method: "POST",

  data: {},

  dataType: " "

});
});
});
Ответить с цитированием
  #3 (permalink)  
Старый 12.09.2017, 22:47
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Сообщение от Decode Посмотреть сообщение
Господа, ситуация следующая, есть форма, которая отправляется методом POST. Мне нужно, чтобы еще все данные формы отправлялись аяксом
Учимся говнокодить?
Нет ситуаций когда одни и те-же данные нужно дважды отправлять на один и тот-же сервер
Если сервера разные, то кроссдоменные запросы должны быть разрешены
Ответить с цитированием
  #4 (permalink)  
Старый 12.09.2017, 22:55
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,144

Decode,

не понял вопроса выше ... если submit и ajax сразу ... то пас, лучше к специалистам по серверам
Ответить с цитированием
  #5 (permalink)  
Старый 12.09.2017, 23:49
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

рони, да, одновременно.

Poznakomlus, да, сервера разные. CORS - разрешены.
Ответить с цитированием
  #6 (permalink)  
Старый 13.09.2017, 00:15
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Сообщение от Decode
да, сервера разные
не все так просто тогда
вам надо быть уверенным в механизме одновременной доставки
ведь может быть, что данные не отправятся аяксом или простым постом,
по каким то причинам данные попадут только к одному получателю, произойдет рассинхронизация
здесь стоит пересмотреть логику приложения
к примеру пусть второй сервер сам по расписанию забирает данные
или первый его уведомляет об этом, отметив при этом флаг синхронизации
Ответить с цитированием
  #7 (permalink)  
Старый 13.09.2017, 00:17
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

Poznakomlus, надо как-нибудь до отправки сабмита аякс отправить, потом сам сабмит. Именно это нужно.
Ответить с цитированием
  #8 (permalink)  
Старый 13.09.2017, 02:24
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

не правильно в логике, см выше
ниже код позволяющий произвести нужные действия
jQuery(document).ready(function ($) {
        $("form").submit( {ajax: false}, function (event) {
            if (false === event.data.ajax) {
                var $form = $(this);
                event.data.ajax = true;
                event.preventDefault();
                $.post('index.php', $form.serialize(), function (res) {
                    $form.submit();
                }).fail(function (error) {
                    // обрабатываем ошибку
                    event.data.ajax = false;
                });
            }
        });
    });
Ответить с цитированием
  #9 (permalink)  
Старый 13.09.2017, 02:36
Профессор
Отправить личное сообщение для Decode Посмотреть профиль Найти все сообщения от Decode
 
Регистрация: 31.01.2015
Сообщений: 576

Poznakomlus, благодарю. Я уже решил проблему.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Валидация веб формы giovanni Events/DOM/Window 3 01.09.2017 15:49
ajax передача отдельной переменной и формы dmitriy94 AJAX и COMET 11 16.01.2015 23:33
Четыре одинаковые формы на странице с разной версткой varanika jQuery 2 19.10.2014 13:14
Перехват запроса от формы Кора Оливе Events/DOM/Window 0 07.07.2014 14:21
проверка формы не работает в ie begelme Javascript под браузер 6 13.08.2013 01:00