作者liunate (測試)
看板C_Sharp
標題Re: 事件執行順序的問題
時間Wed Dec 14 12:17:51 2005
※ 引述《ganymade (呀)》之銘言:
: 為了提升程式執行效率
: 我在我的web form裡用上了一些和javascript合作的地方
: 其中一個是
: 我在DataGrid裡有很多的項目可以勾選(checkbox)
: 而且是可以重複編輯的
: 我的做法是在DataGrid的ItemDataBound事件處理函式裡
: 先把所有的CheckBox有沒有勾選
: 做成[1,t];[2;f];[3;f]...放在一個Hidden Input欄位裡
: 代表1號ChecoBox有沒有被勾選等等
妳該不會是重複做了這段的事情呢?
: 然後在網頁要被PostBack之前
: 先用JavaScript做出[1,f];[2,f];[3,t]
: 這代表1號被取消勾選,3選被勾選
: 於是我把[1,f];[3,t](就是有變動的地方)放在原來的Hidden Input欄位
: 所以我的後端程式不需要做這麼多事
: 只要看哪些被取消勾選、哪些被勾選
: 直接在資料庫裡做更動就好了
: 可是問題來了
: 第一次處理都很ok
: 不過第二次(PostBack之後)之後
: 我預期Hidden Input的值會是更新後的[1,f];[2,f];[3,t]
: 但是事實上卻還是[1,f];[3,t]
: 我在PreRender裡,有放DataGrid.DataBind()
: 這樣不是會重新DataBind一次嗎?
: 那DataBind的時候,不是會ItemDataBound嗎?
: 還是我的觀念錯了?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.73.225.174
推 ganymade:什麼意思呢? 12/14 18:58
→ ganymade:我應該是只做一次而已 12/14 18:58
→ ganymade:而且是在每次DataGrid的ItemDataBound裡做的 12/14 18:59
推 liunate:不如把codepo 上來研究看看 12/14 19:24
→ ganymade:麻煩你了,這位大大 12/14 20:15