2013-11-04 88 views
0

我有一個ASP.Net RadioButtonList控件,其AutoPostBack設置爲true,服務器端處理程序爲SelectedIndexChanged事件。RadioButtonList不會觸發ajax回發

<asp:RadioButtonList runat="server" ID="btnAcceptReject" RepeatDirection="Horizontal" CssClass="checkboxlist borderless" ValidationGroup="data" AutoPostBack="true" OnSelectedIndexChanged="radioButtonList_SelectedIndexChanged"> 
    <asp:ListItem Text="The edition is hereby validated for conformity to standards" Value="0" Selected="True"></asp:ListItem> 
    <asp:ListItem Text="The edition does not meet standards and still has to be reviewed" Value="1"></asp:ListItem> 
</asp:RadioButtonList> 

我使用的是RadAjaxManager,一個Telerik的控制,處理Ajax回發

<telerik:RadAjaxManagerProxy runat="server" ID="RadAjaxManagerPRoxy1"> 
    <AjaxSettings> 
     <telerik:AjaxSetting AjaxControlID="btnAcceptReject"> 
      <UpdatedControls> 
       <telerik:AjaxUpdatedControl ControlID="pnlControls" /> 
      </UpdatedControls> 
     </telerik:AjaxSetting> 
</AjaxSettings> 

pnlControl是含有控制頁面上的面板,這將取決於哪個被使能/禁止單選按鈕被選中。

以上總是執行頁面的完整回發。

我該如何讓它執行ajax部分回發?

回答

0

難道這是你使用RadAjaxManagerProxy而不是RadAjaxManager的結果嗎?

RadAjaxManagerProxy希望有一個RadAjaxManager母版頁等中的其他地方聲明

如果失敗,那麼我建議改變pnlControl成爲RadAjaxPanel然後取出RadAjaxManagerProxy宣佈爲RadAjaxPanel將盡一切爲你工作。

祝你好運!


在回答您的意見,我現在會建議做參考ASPX頁面中的以下(如果您的情況下是可能的):

  • 添加RadAjaxManagerProxy到客戶端
  • 在後臺代碼添加一個新的小組的Page_Load中被稱爲
  • (回發檢查外)中的子:

昏暗面板作爲面板= CTYPE(myUserControl.FindControl( 「pnlControls」),面板) 昏暗無線電如單選按鈕列表= CTYPE(myUserControl.FindControl( 「btnAcceptReject」),單選按鈕列表)

RadAjaxManagerProxy1.AjaxSettings.AddAjaxSetting(無線電,面板,爲Nothing)

*無 - 可選,如果你有一個在.aspx頁面

希望它可以幫助上宣佈RadAjaxLoadingPanelID!

+0

RadAjaxManager確實在母版頁上聲明,否則我會得到一個異常。我從來沒有使用RadAjaxPanel,但我會試試 – kfc

+0

我嘗試使用RadAjaxPanel,同樣的故事。它繼續執行完整的回發。如果這是相關的,這兩個控件,btnAcceptReject和pnlControls都在用戶控件中。 – kfc

+0

已對我的原始文章進行了編輯 - 請查看 – Mak