2011-08-23 87 views
0

當我提交我的表單時,重複的ajax調用使它永不停止。jquery幫助重複ajax調用

這裏是我的Jquery對形式Ajax調用提交:

$('form#formgo').submit(function(e) { 
    e.preventDefault(); 

    $('#comparecontent').empty().html(
     '<p style="text-align:center;">' + 
     '<img src="../images/ajax.gif" /></p>'); 

    var form = $(this).closest('form'); 

    $.ajax({ 
     type: form.attr('method'), 
     url: form.attr('action'), 
     data: form.serialize(), 
     success: function(msg){ 
      $('#comparecontent').html(msg); 
     } 
    }); 

    return false; 
}); 
+0

你的意思是無盡的,它從來沒有成功,或者請求重複一遍又一遍嗎? –

+0

它是否曾經到達第二線? –

+0

#1 - 它只是繼續做ajax調用(POST)並呈現html內容 –

回答

3

在你的Ajax調用,嘗試請求指定timeout

$.ajax({ 
     type: form.attr('method'), 
     url: form.attr('action'), 
     data: form.serialize(), 
     timeout: 3000, // time in milliseconds 
     success:function(msg){ 
$('#comparecontent').html(msg); 
    } 
}); 

看到.ajax()文檔以瞭解更多信息在可用參數http://api.jquery.com/jQuery.ajax/

+0

超時不會停止所有重複的ajax調用 –

+0

嗯,「無盡」和「重複」是兩個不同的東西。如果可能的話,請提供一個鏈接到您的頁面,以便社區可以親自檢查問題。 – SteamDev

+0

我的意思是重複ajax調用,頁面不在線 –

0

似乎有東西引發提交。
嘗試event.stopPropagation()

$('form#formgo').submit(function(e) { 
    e.preventDefault(); 
    e.stopPropagation(); 
    ... 

而且檢查的onchange事件勢必ID爲comparecontent元素。