Показать сообщение отдельно
  #3 (permalink)  
Старый 02.03.2013, 09:55
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

nsk_1945, ты хочешь и рыбку съесть и в воду не лезть?
Опередись: либо ты отменяешь отправку формы, либо нет, но тогда текущий документ будет выгружен и загружен новый, и само собой твой скрипт (отправка ajax) не успеет отработать и будет прерван.
Можно конечно отметить отправку формы, или отправлять ее после ответа на ajax-запрос, тогда все будет работать, но возникает вопрос - зачем делать два запроса на сервер (ajax + POST) если можно сделать один (либо ajax либо POST) ?

$("form").submit(function(e){
    var form = this;
    var infoStr = searchInfo(); // Получаем нашу строку
    $.ajax({
        type: "POST",
        url: url,
        data: {
            lang: language,
            ref: referer,
            urlOut: "",
            skw: infoStr   // Нужная строка        
        },
        success: function() {
            // пришел ответ, отправляем форму, не забывая удалить обработчик, иначе пойдет по кругу
            $(form).off('submit').submit();
        }
    });
});
Ответить с цитированием