2013-07-22 94 views
0

我有一个RadGrid打开一个弹出窗口来更新记录。在编辑弹出窗口中,我有一个组合框,它在selectedindex上改变了事件。在这种情况下,我试图设置网格页面上的HiddenField。这意味着隐藏的字段不在网格的相同范围内。RadGrid编辑弹出菜单

page.aspx

<div> 
        <RadGrid runat="server" ID="GlJournalEntryGrid" Height="300px" Width="1400px" 
         AutoGenerateColumns="False" OnNeedDataSource="GlJournalEntryGrid_NeedDataSource" 
         OnItemCommand="GlJournalEntryGrid_ItemCommand" 
         OnItemDataBound="GlJournalEntryGrid_ItemDataBound"> 

... Edit PopUp and controls....the comboBox that updates one of the other HF below... 

        </RadGrid> 
       </div> 
       <div id="HiddenFieldsForGlChartLU"> 
        <asp:HiddenField runat="server" ID="jegAccountHF" /> 
        <asp:HiddenField runat="server" ID="jegCompanyHF" /> 
        <asp:HiddenField runat="server" ID="jegDivisionHF" /> 
        <asp:HiddenField runat="server" ID="jegRegionHF" /> 
        <asp:HiddenField runat="server" ID="jegDepartmentHF" /> 
       </div> 

代码隐藏

protected void jegCompany_ComboBox_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e) 
    {    
     #region Set HiddenField for control so accessible by javascript 

     if (cbCompany.SelectedValue != null) 
      jegCompanyHF.Value = cbCompany.SelectedValue; 
     else 
      jegCompanyHF.Value = ""; 

     #endregion Set HiddenField for control so accessible by javascript 

... }

+0

什么是这里的问题加载数据? –

回答

0

是触发SelectedIndexChanged事件的服务器端事件。这意味着弹出窗口将有关在组合框中选择的项目的信息发布到服务器。您希望数据在客户端的父浏览器窗口的隐藏字段中显示。

为了更新客户端上的信息,你有两个选择:

  1. 写一些JavaScript从子窗口,将数据发送到 父窗口。
  2. 在您的SelectedIndexChanged事件将数据写入会话,然后触发 父窗口的刷新,从会议