2012-01-08 95 views
1

我的應用程序執行一個form.submit(),它調用一個返回FileResult(附件)的動作。提交之前,我有一個「請稍等」div的javacript。結果返回時,我需要清除它。對於返回寫入頁面的響應的操作,我使用window.onload事件清除div,但是當附件返回時,該事件不會觸發。返回mvc後需要javascript事件FileResult

由於提交是異步的,因此無法執行類似form.submit();HidePleaseWait()的操作。是否有其他事件在附件退回時觸發?或者,是否有某種方法可以組合多個ActionResult,以便我可以在相同的響應中更新頁面?

回答

1

如果您使用的是jQuery,您應該執行以下操作。

$('selector').submit(function(event){ 
    event.preventDefault(); 
    // @Hiding 
    // Do your AJAX call 
    $.ajax({ 
     url: "test.html", 
     success: function(){ 
      // @What to do when done 
     } 
    }); 
}); 
+0

+1,但爲什麼'event.preventDefault();'? – gdoron 2012-01-09 02:04:20

+0

我會在「做什麼時做」塊做什麼?我知道我可以隱藏我的等待div,但我也必須處理附件響應。我知道如何處理「正常」的反應,例如,我會替換內容,但我不知道如何處理這個問題。 – 2012-01-09 02:20:17

+0

好吧,如果你想發送一個表單而不重新加載頁面,你可以將它改爲AJAX調用。它避免瀏覽器進入操作地址。 – 2012-01-09 02:46:51

相關問題