2008-09-16 53 views

回答

2

您可以使用Ajax請求,但一定要使其成爲同步請求而不是異步請求。或者,只要用戶進行更改就簡單地保存狀態,這也可以在用戶的​​瀏覽器崩潰時保護數據。

0

您也可以在卸載時使用JavaScript設置cookie。我認爲ajax對cookie的優勢在於,您可以獲取數據供您進行報告,並且用戶(如果已登錄)可以使用不同計算機上的數據。

使用ajax的缺點是它可能會減慢瀏覽器窗口的實際關閉速度,如果服務器響應速度慢,這可能會很煩人。

0

這取決於用戶如何離開頁面。 如果在GUI中有「註銷」按鈕,則可以在用戶單擊此按鈕時觸發ajax請求。 否則我不認爲在onUnload中提出請求是個好主意。如前所述,您將不得不提出同步請求... Cookie解決方案的替代方案是隱藏文本字段。這是一種通常由諸如RSH等工具處理Ajax帶來的歷史問題的技術。

1

有一個答案上面說,使用同步ajax調用,這是最好的情況。問題在於卸載無處不在。如果你看看here,你會發現一些技巧來幫助你在safari中卸載事件...你也可以使用Google Gears來保存內容用戶端,以便用戶將回來的情況下,但唯一完全安全的方法來保持只要用戶在頁面上或進行更改,該信息就會持續發送。

相關問題