2012-02-06 59 views
2

我有一個表單,它根據某些單選按鈕和複選框將輸入字段設置爲啓用/禁用。如果用戶向前導航然後點擊後退按鈕,字段值將保留,但啓用狀態將恢復爲默認值。有沒有辦法通過JavaScript處理這個問題?在後退按鈕上保留HTML表單輸入啓用狀態

+0

字段值保留在每個瀏覽器中。這可能是自動填充的成本..做檢查.. – 2012-02-06 21:41:52

回答

3

您可以嘗試調用基於DOM就緒事件(window.onload)中的單選按鈕選擇來啓用/禁用DOM元素的JavaScript函數。從緩存加載頁面時將執行此事件,並且通常應該連接這些元素的啓用/禁用狀態。

+0

這沒有把戲。我在$(document).ready()中調用了我的setFieldState()函數。我會做更多的測試,如果這不能通過瀏覽器證明,我會嘗試@ skyburner的建議。 – CtrlDot 2012-02-06 22:09:09

2

這裏最好的答案是:「這取決於」。

我會解釋一下。

這取決於您希望支持多大的瀏覽器受衆。在大多數現代瀏覽器中,您可以嘗試捕獲JavaScript/JSON塊中的DOM元素和按鈕的值,然後將其推入像window.localStorage這樣的位置,或者甚至在cookie中(如果您想要cookie,cookie將是最好的選擇這在較舊的瀏覽器上工作)。

用戶然後遍歷回來,您可以檢查一個或多個值,然後重新建立按鈕狀態,然後加載頁面。

但是,如果您使用的是JavaScript框架,如jQuery,我會建議採取看看這個:

http://archive.plugins.jquery.com/project/DOMCached

這將允許您執行相同的特技正如我剛纔所描述的,在那裏您可以將按鈕參數捕獲到JSON/Javascript數據對象中,通過DOMCached存儲,然後在用戶返回到頁面時訪問。