顯示具有 hidden 標籤的文章。 顯示所有文章
顯示具有 hidden 標籤的文章。 顯示所有文章

2011年7月5日 星期二

動態產生的select box 裡的 item 在回一頁時會跑掉

user 反應, 他的訂單資料有錯.

經反複的測試, 終於找到錯誤的原因, 這個bug 是必需輸入過錯誤的資料, 才測試的出來, 發生的因為 user 曾輸入過錯誤的資料, 造成回上一頁時, 動態產生的 select box 裡的 item 會固定變成第1個項目.


┏┓
┗■━━━━━━━━━━━━━━━━━━━━━━━
 ┃ 執行畫面 (Screens)
 ┗━━━━━━━━━━━━━━━━━━━━━━━
 ■ 1. 在下拉框(select box)輸入正確的資料, 松山區.



 ■ 2. 固定輸入錯誤的資料.



 ■ 3. 畫面一回來, 就會看到 動態產生的下拉框裡固定被帶入第1個項目, 而不是正確的 "松山區".




┏┓
┗■━━━━━━━━━━━━━━━━━━━━━━━
 ┃ 解決方式 (Solution)
 ┗━━━━━━━━━━━━━━━━━━━━━━━
 ■ 增加一個隱藏的欄位, 用來存放送出之前的內容值. 並在回一頁時, 把該值填入動態產生的下拉框之中.

 ※ 附註: 這個隱藏欄位的用法, 建議不要使用 input 的 hidden 欄位來做, 經測試 google chrome 很神奇的會抓不到該 hidden 欄位的值, 即使你在 submit 按鈕按下去之後有給他值. 建議使用 type='text' style='display:none;'

 ※ 附註: 由於 google chrome 和 firefox 都太聰明了, 會 cache 住前一頁的 image, 會造成回上一頁時, 驗證碼會是舊的, 所以要在回上一頁之後, 執行一次 reset 驗證碼的動作.

Facebook 留言板