Каким будет jQuery-эквивалент этого вызова Ajax-прототипа? - PullRequest
2 голосов
/ 05 сентября 2010

В Prototype этот вызов Ajax отправляет свою форму на сервер в виде строки кодированных пар URL-адресов, как вы могли бы найти в HTTP-запросе GET:

function doajax()
{
 var current_req = new Ajax.Request('/doajax', {
 asynchronous:true, 
 evalScripts:true,
 parameters: $('ajax_form').serialize(true)}
 );
}

Как бы вы сделалито же самое, используя jQuery?

Ответы [ 2 ]

4 голосов
/ 05 сентября 2010

Поскольку по умолчанию method для Ajax.Request установлено POST, эквивалентный вызов $.post() будет выглядеть следующим образом:

function doajax()
{
  $.post('/doajax', $('#ajax_form').serialize(), function(respose) {
    //do something with response if needed
  });
}

Если вам не нужно / donне заботится об ответе, это будет делать:

function doajax()
{
  $.post('/doajax', $('#ajax_form').serialize());
}

Или, если вы специально выбираете скрипт, тогда он будет выглядеть так, используя $.ajax():

function doajax()
{
  $.ajax({
    url:'/doajax', 
    type: 'POST',
    data: $('#ajax_form').serialize(),
    dataType: 'script',
    success: function(respose) {
      //do something with response if needed
    }
  });
}
0 голосов
/ 05 сентября 2010

Используя get() ajax-запрос и serialize -ing форму:

$.get({
  url: '/doajax', 
  data: $('#ajax_form').serialize(),
  success: function (data) {//success request handler
  }
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...