我遇到telerik RadGrid的問題,我想啓用多行選擇。我也想在選擇或取消選擇一行時去服務器。我創建了一個JavaScript函數來處理網格的客戶端事件(OnRowSelected和OnRowDeSelected)。該功能是這樣的:
__doPostBack()是否可能發送GET請求?
function onOperationRowSelected(sender, eventArgs) {
__doPostBack("<%=myControl.ClientID %>", "rowSelected:" + eventArgs.get_itemIndexHierarchical());
}
其他功能很相似,唯一的區別是,它發送字符串「rowDeselcted」而不是「rowSelected」。
On Page_Load我使用「IsPostBack」檢查請求是否是Post請求,如果是,我檢查它是否是rowSelected或rowdeselected。
我的問題是當我在我的網格上選擇第一個原始數據時,發生Post請求(這是預期的),但是,當我選擇第二行時,發出GET請求,顯然會導致IsPostBack返回false。
我在這裏錯過了什麼?
編輯:我只是檢查Request對象,發現列舉HTTPMethod屬性值是「POST」。它是一個HTTP POST請求,並且IsPostBack返回錯誤?
事實上,這是一個由網格隱藏的Ajax調用,OnRowSelected首先觸發OnRowDeselcted,也就是說,當您選擇一行時,先前選擇的行觸發OnRowDeselected,默認情況下會發出get請求。 – Galilyou 2010-04-07 11:17:41