обработка успешной отправки формы с помощью jquery - PullRequest
0 голосов
/ 06 марта 2012

В моем приложении я использую плагин, который генерирует следующую разметку:

<form id="addCommentForm" 
  action="/foo/add" 
  method="post" 
  onsubmit="
    jQuery.ajax({type:'POST', data:jQuery(this).serialize(), 
      url:'/foo/add',

      success:function(data,textStatus) {
        jQuery('#comments').html(data);
      },           
    });
    return false">

<!-- form elements here -->
</form>

Когда форма отправлена ​​успешно, я хочу сделать что-то еще после обработчика успеха, определенного плагином, скажем alert('hello');.

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

Я искал событие формы, которое выполняется после onsubmit, к которому я мог бы присоединить свой код, но ничего не нашел.

1 Ответ

3 голосов
/ 06 марта 2012

Если вы не можете изменить его, вы можете использовать .ajaxSuccess () для обработки всех внешних вызовов ajax и фильтрации того, что вам нужно:

$('form').ajaxSuccess(function(evt, request, settings) {
 if (settings.url == 'xxx')
     alert('test');
});

Не красиво, но это может сработать.

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