我在網頁上有一個ExtJS網格,我想在用戶離開頁面時將它的一些狀態信息保存回服務器。 我可以使用onUnload的Ajax請求來做到這一點嗎? 如果不是,有什麼更好的解決方案?如何將一些JavaScript狀態信息保存回我的onUnload服務器上?
1
A
回答
2
您可以使用Ajax請求,但一定要使其成爲同步請求而不是異步請求。或者,只要用戶進行更改就簡單地保存狀態,這也可以在用戶的瀏覽器崩潰時保護數據。
0
您也可以在卸載時使用JavaScript設置cookie。我認爲ajax對cookie的優勢在於,您可以獲取數據供您進行報告,並且用戶(如果已登錄)可以使用不同計算機上的數據。
使用ajax的缺點是它可能會減慢瀏覽器窗口的實際關閉速度,如果服務器響應速度慢,這可能會很煩人。
0
這取決於用戶如何離開頁面。 如果在GUI中有「註銷」按鈕,則可以在用戶單擊此按鈕時觸發ajax請求。 否則我不認爲在onUnload中提出請求是個好主意。如前所述,您將不得不提出同步請求... Cookie解決方案的替代方案是隱藏文本字段。這是一種通常由諸如RSH等工具處理Ajax帶來的歷史問題的技術。
1
有一個答案上面說,使用同步ajax調用,這是最好的情況。問題在於卸載無處不在。如果你看看here,你會發現一些技巧來幫助你在safari中卸載事件...你也可以使用Google Gears來保存內容用戶端,以便用戶將回來的情況下,但唯一完全安全的方法來保持只要用戶在頁面上或進行更改,該信息就會持續發送。
相關問題
- 1. Spotify的:保存回放狀態信息
- 2. 在服務器上保存信息並將其恢復
- 3. 將javascript vars保存到服務器上
- 4. ASP.NET - 如何顯示服務器狀態/信息?
- 5. 如何在我的服務器上處理信用卡信息
- 6. 如何保存CGI應用程序的服務器狀態?
- 7. Android後臺服務狀態信息
- 8. ASP.NET C#中繼器 - 如何將信息傳回服務器沒有Javascript?
- 9. 如何將信息存儲在Web服務的上下文中?
- 10. 在服務器上保存查看狀態
- 11. 將信息存儲在Heroku服務器上的數據庫中
- 12. 如何將表單信息提交給我的MySQL服務器?
- 13. tomcat7的當前服務器狀態信息
- 14. 如何將上傳文件保存到另一臺服務器
- 15. 如何在執行時從Web服務發送狀態信息?
- 16. 如何找出在一臺服務器上運行在另一臺服務器上的Windows服務狀態?
- 17. 如何用JavaScript保存服務器上的圖像?
- 18. 如何以編程方式將SMTP服務器詳細信息存儲(保存)回web.config
- 19. 廣播接收器獲取服務狀態信息
- 20. 如何保存我的活動狀態?
- 21. 我應該如何從我的WCF服務返回狀態?
- 22. 如何從JavaScript服務器使用JavaScript獲取信息?
- 23. ASP.NET有沒有辦法將應用程序狀態保存爲不同服務器上的會話狀態?
- 24. 可以DAO的保持狀態信息
- 25. 我的模型只保存了一些信息
- 26. 使用javascript獲取服務器信息
- 27. 郵差 - 我可以保存一些變量中返回的cookie信息嗎?
- 28. 如何將信息保存在c#
- 29. 服務器狀態
- 30. 如何將Word文檔從ASP.NET Intranet保存回主服務器?