我想更新ASP.Net中没有页面刷新的下拉框中的值

时间:2014-06-18 04:52:26

标签: javascript jquery asp.net asp.net-ajax

我想以ASP .NET代码为例 -

由于我有四个下拉框,当我在第一个框中选择值时,在第二个框中根据第一个框过滤掉的值应该没有任何页面刷新请帮帮我。

实施例 -

我给你的是国家,州,城市的例子。当我选择国家,然后在第二个框中,所有州应根据国家更新,因为我将选择州,然后所有城市名称应在第三个框中更新。

此过程应该不刷新页面。

1 个答案:

答案 0 :(得分:0)

如果您使用的是网络表单,则可以在网络表单中使用UpdatePanel并在更新面板中提供下拉列表。 请找到示例代码

List<Districts> list = new List<Districts>();
Districts item = new Districts();

protected void Page_Load(object sender, EventArgs e)
{
     if (drd1.SelectedItem.Value == "Kerala")
     {
        item.sname = "Ekm";
        item.id = 1;
        list.Add(item);
        Districts item1 = new Districts();
        item1.sname = "thr";
        item1.id = 2;
        list.Add(item1);
     }
     else
     {
        item.sname = "Coimbatore";
        item.id = 1;
        list.Add(item);
        Districts item1 = new Districts();
        item1.sname = "Chennai";
        item1.id = 2;
        list.Add(item1);
     }
  }

public class Districts
{
    public string sname { get; set; }
    public int id { get; set; }
}
protected void drd1_SelectedIndexChanged(object sender, EventArgs e)
{
    drd2.DataSource = list;
    drd2.DataTextField = "sname";
    drd2.DataValueField = "id";
    drd2.DataBind();
}

,您的网页看起来像这样

   <asp:ScriptManager ID="scr" runat="server"></asp:ScriptManager>
    <asp:UpdatePanel ID="upd" runat="server" >
        <ContentTemplate>
            <asp:DropDownList ID="drd1" runat="server" AutoPostBack="true"  OnSelectedIndexChanged="drd1_SelectedIndexChanged">
                <asp:ListItem Text="Kerala" Value="Kerala">
                </asp:ListItem>
                <asp:ListItem Text="TN" Value="TN"></asp:ListItem>
            </asp:DropDownList>
            <asp:DropDownList ID="drd2" runat="server" Width="100"></asp:DropDownList>
        </ContentTemplate>
    </asp:UpdatePanel>