Repeater中點擊按鈕事件時要注意頁面PostBack的問題
對Repeater而然, 要處理其Iitem中的按鈕的事件時常規的事件調用方法是不起作用的。
而需要用到它的OnItemCommand事件。
但是這裡有個問題:
一般我們是在Page_Load事件中對Repeater進行綁定的,
這在第一次執行是並不會報錯,但是點擊Repeater中的按鈕時問題就來了。
原因是點擊按鈕後而面刷新了,對Repeater又重新進行了綁定。
之前的按鈕已經不存在了 ,也就無法處理它的事件,那麼就報錯。
解決方法是在頁面PostBack後不對Repeater進行綁定:
if(!IsPostBack)
{
//把綁定代碼放在這裡
}
這種問題是很基礎的, 但我們卻經常忽略它。 >_<
而需要用到它的OnItemCommand事件。
但是這裡有個問題:
一般我們是在Page_Load事件中對Repeater進行綁定的,
這在第一次執行是並不會報錯,但是點擊Repeater中的按鈕時問題就來了。
原因是點擊按鈕後而面刷新了,對Repeater又重新進行了綁定。
之前的按鈕已經不存在了 ,也就無法處理它的事件,那麼就報錯。
解決方法是在頁面PostBack後不對Repeater進行綁定:
if(!IsPostBack)
{
//把綁定代碼放在這裡
}
這種問題是很基礎的, 但我們卻經常忽略它。 >_<