ajax|標準|程式|瀏覽器
在Ajax中支援後退按鈕的基本設計思想
在這一節中,我們將討論在Ajax應用程式中支援後退按鈕所需的基本步驟,並給出說明所需步驟的簡單範例程式碼。
簡單樣本程式如圖1所示,在介面中將有一個選擇框,它有兩個值:“Year 1”和“Year 2”。對於這個程式,我們將在選擇框值發生改變時跟蹤記錄。這意味著使用者可以首先選擇“Year 2”然後單擊後退按鈕後退到先前的選擇。
圖1.帶有選擇框的簡單樣本程式
樣本程式最初是一個帶有JavaScript getter和setter(用於選擇框值)的簡單HTML表單:
<html> <head> <script language="JavaScript" type="text/JavaScript"> function reportOptionValue() { var myForm = document.make_history; var mySelect = myForm.change_year; return mySelect.options[mySelect.selectedIndex].value; } function setOptionValue(value) { var myForm = document.make_history; var mySelect = myForm.change_year; mySelect.options[value-1].selected = true; } </script> </head> <body> <form name=make_history> <select name=change_year> <option value="year_1">Year 1</option> <option value="year_2">Year 2</option> </select> </form> </body> </html>
我們將首先實現第一個要求:建立狀態的記錄。正如我們前面所提到的,這個要求包含以下三個步驟:
- 建立記錄
- 儲存有意義的狀態
- 產生相應的URI
- 將這個URI添加到瀏覽器的堆棧中
我們希望能夠儲存選擇框的每一次更改。因此我們將建立新的包含選擇框狀態資訊的URI。
為了遵循Internet標準,我們將使用URI的片段標識符部分。按照IETF RFC 3986的規定,“……作為用戶端間接引用的主要形式,片段標識符在資訊檢索系統中起著特殊的作用,〈……〉片段標識符在解除引用之前與URI的其餘部分是分離的,因此,片段本身中的標識資訊只被使用者代理程式所廢棄,而不考慮URI方案……”。
- Ajax: 一個建立Web應用的新途徑
- Ajax的錯誤處理機制探討(2)
- Ajax的錯誤處理機制探討(1)
- 初次體驗.NET Ajax無重新整理技術
- Rails系統中的AJAX開發技術簡析(4)