2010-07-27 68 views
0

我想要一個模式對話框,說「請等待,計算」出現,而jquery.ajax正在計算產品的價格,以免惹惱用戶。我嘗試了ajaxStart()和ajaxStop()函數,但它不能正常工作。請有人給我一些建議,我做錯了什麼?使用jQuery UI的對話框與jQuery的AJAX

下面的代碼:

var form = document.forms["orderDefinition"]; 

form.elements["formChangeRequest"].value = "true"; 
$.ajax({ 
    type: "POST", 
    url: "ajax/possibleValues.html", 
    data: $("form#orderDefinition").serialize(), 
    success: function(response){ 
    $('#usercontent .sleeve .toprow').html(response); 
    applyValidation(); 
    } 
}); 

$("#waitingMsg").ajaxStart(function(){ 
     $(this).dialog({modal: true}); 
    }).ajaxStop(function(){ 
     $("#waitingMsg").hide(); 
}); 

非常感謝

回答

1

您可以使用 'beforeSend' 和.ajax()

從文檔 '完成' 回調,

「beforeSend在發送 請求之前調用,並且通過作爲參數的XMLHttpRequest對象。 當請求 完成時調用完成,無論是失敗還是 成功。「