现在我有一个DataGrid其中有两个模板列,分别放着DropDownList与Label,我想当该触发DropDownList的选择时,Label的Text也随着改变。
请问我该怎么实现?

解决方案 »

  1.   

    page.aspx:
    <asp:DataGrid id="DataGrid1" runat="server" AutoGenerateColumns="False">
        <Columns>
         <asp:TemplateColumn>
    <ItemTemplate> <asp:DropDownList id="DropDownList1" runat="server" 
                          AutoPostBack="True"               OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
    </asp:DropDownList>
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:TemplateColumn>
    <ItemTemplate>
    <asp:Label id="Label1" runat="server"></asp:Label>
    </ItemTemplate>
    </asp:TemplateColumn>
    </Columns>
    </asp:DataGrid>page.aspx.cs:(注意public)
    public void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e) {
         ((Label)this.DataGrid1.FindControl("Label1")).ID 
           = ((DropDownList)sender).SelectedValue;//sender不对就用FindControl
    }不知道你是在客户端改变还是在服务器端改变,客户端就简单了
    无非就是document.getElementById()
      

  2.   

    用DropDownSearch的selectIndexChanged事件
      

  3.   

    各位理解错误了。
    我是想当DropDownList的值改变时,从数据库读取数据,并显示在Label控件中。
    如:DropDownList中的选项是学生的姓名/ID,我需要选择不同的学生时在Label中显示对应的联系方式。
      

  4.   

    public void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e) {     在这里面写读数据然后再显示在Label控件中
    }