2010-08-12 33 views
0

我想知道是否有一種簡單的方式使用Jquery做些事情,而表單調用的PHP過程給出響應。如何「保留」頁面,直到用jquery提交響應

PS:我非常瞭解發送POST數據的ajax函數,並在成功時做了一些事情。

我會解釋我在1.php頁面上有一個指向2.php(只是一個腳本)的表單,如果出現錯誤,它會重定向到1.php,如果沒有問題,則重定向到第3.php頁面。

想要使用jquery,只需在提交過程結束時顯示一條帶有gif加載器的消息(在提交按鈕下面附加一個文本)(調整圖像大小可能需要10秒)。我在問一個簡單的方法,因爲我不想通過AJAX傳遞每個POST數據或驗證數據,因爲這全部由PHP頁面(2.php)通過重定向到頁面來處理。

我能夠做到這一點,問題是,一旦您提交,因爲它返回true,原始頁面上的所有內容都會停止。例如,我將一個動畫添加到文字「正在處理中,請稍候......」,這個動畫分別不會在所有等待時間內繼續,並且不會顯示,因爲如果之前沒有保存在緩存中,停止該過程下載它,即使我預先加載它也不會因相同的原因動畫。

基本上我需要的是通過jquery ajax提交所有POST數據(返回false以允許下一個顯示!)和「讓進程」繼續進行任何響應。

謝謝。

回答

0

您可以使用synchronous call而不是異步的jquery'ajax'帖子,它不會返回,直到服務器完成處理。作爲提交處理程序的一部分,彈出「請等待,處理」消息,並在收到響應後將其取下。

+0

我看看那個線程,在我看來,我仍然必須通過POST在Ajax中傳遞參數? – 2010-08-14 14:18:53

+0

是的,但這是必須的。你可以做一個onsubmit處理程序來彈出「請稍候」的消息,但不能保證它會被看到。畢竟,你點擊了提交,這意味着你已經開始導航到一個新的頁面。 AJAX方法至少可以保證當請求完成時你仍然會在同一頁面上。 – 2010-08-14 15:33:40

+0

謝謝你的解釋 – 2010-08-14 17:47:48

相關問題