Как мне остановить перенаправление после отправки формы? - PullRequest
0 голосов
/ 14 апреля 2010

У меня был похожий вопрос, опубликованный здесь несколько часов назад, только сейчас я получил ответ, который я должен изучить, чтобы использовать AJAX для этого. Поскольку я хочу завершить эту часть сайта сегодня, я не могу позволить себе изучать AJAX с основ, чтобы сделать это сейчас ... Это не должно быть чем-то сложным, и я думаю, что я смогу сделать это, но я недостаточно опытный ...

У меня есть форма, когда вы нажимаете кнопку отправить, она отправляет сообщение на twitter.com/statuses/update.xml, и я должен иметь возможность сделать это без перенаправления туда.

Есть ли простой способ сделать это или мне нужно выучить AJAX?

Благодарю за любой ответ.!

редактирование:

Я использую это для отправки:

$(function() {  
    $("#skikka").click(function() {  
        var dendar = 
            "http://" + 
            $("#usernam").val() + ":" + $("#passwo").val() +
            "@twitter.com/statuses/update.xml";

        $("#formen").attr("action", dendar);
        $("#formen").submit();
        alert(dendar);
        return false;

    });  
});

Ответы [ 5 ]

2 голосов
/ 14 апреля 2010

Вот краткий пример использования JQuery , который, вероятно, является самым простым способом сделать AJAX, не тратя слишком много времени на его изучение. Хотя это звучит так, как будто вам нужно изучить совсем другую технологию (Jquery), на самом деле это не так сложно. В основном это просто добавление еще одной ссылки на javascript-файл на страницу.

    $.post(dendar , $("#formen").serialize());

Подробнее об AJAX с Jquery здесь .

Поскольку вы отправляете сообщения в другой домен, вам придется проделать небольшую дополнительную работу. Прочтите эту статью о , используя JSONP против twitter .

Также вот плагин JQUERY специально для работы с твиттером: jTwitter

0 голосов
/ 14 апреля 2010

Если вы должны сделать это таким образом (с помощью события click и без просто отправки сервером перенаправления), вы можете добавить событие onSubmit в форму, которая обрабатывает фактическую отправку через ajax, а затем отменяет распространение события.

Event.observe( 
  $('searchfield').form , 
  'submit' , 
  function( e ){ 
    alert('No YOU' ); 
    /* secretly submit using ajax and clear form */ ; 
    Event.stop( e ) ;
  });

Нечто подобное.

0 голосов
/ 14 апреля 2010

Просто перенаправьте обратно на свою страницу в вашем серверном скрипте. Какой язык вы используете?

0 голосов
/ 14 апреля 2010
// post via ajax
$.post(dender, $("#formen").serialize());

Полный пример:

$(function() {
$("#skikka").click(function() {
var dendar = "http://" + $("#usernam").val() + ":" + $("#passwo").val() + "@twitter.com/statuses/update.xml";

// post via ajax
$.post(dender, $("#formen").serialize()); 

alert(dendar); return false;

});
});
0 голосов
/ 14 апреля 2010

Вы можете использовать type = "button" вместо type = "submit".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...