'ajax:success'回调不起作用

时间:2012-03-06 10:57:29

标签: jquery

当我提交表单时,我希望在表单成功时获得成功。我正在使用jquery ujs

$('#new_invitation').submit(function(e)  {
 var $this = $(this);
 $this.on('ajax:success', function(e) {
  alert ('Success');
 });
});

不会触发成功警报:(。

为什么?

1 个答案:

答案 0 :(得分:2)

你好吗?在我看来,你实际上并没有使用AJAX提交表单,因为submit()函数将触发表单的正常提交。你能试试这段代码吗?

$('#new_invitation').live('submit', function(event){
  event.preventDefault(); //Stops the normal form submission process
  form = $(this);
  data = form.serialize(); //serializes the form data
  jQuery.ajax({
    type: 'POST',
    dataType: 'JSON', // JSON, HTML, whatever your API responds to
    url: form.attr('action'), //fetches the URL from the form
    success: function(data,textStatus,jqXHR){
      //Success callback
      alert('success');
    }
  });
});

这假定'#new_invitation'是表单标签的ID。我建议你看一下jQuery docs网站,他们有很多关于AJAX的信息:http://api.jquery.com/jQuery.post/

祝你好运!