【问题标题】:I want to update values in drop down box without page refreshing in ASP.Net我想更新下拉框中的值而不在 ASP.Net 中刷新页面
【发布时间】:2014-08-08 06:15:51
【问题描述】:
我想要 ASP .NET 代码作为示例-
由于我有四个下拉框,当我将在第一个框中选择值时,然后在第二个框中根据第一个框过滤的值应该没有任何页面刷新请帮助我。
例子-
我给你举了国家、州、城市的例子。当我选择国家时,第二个框中的所有州都应根据国家/地区进行更新,当我选择州时,所有城市名称应在第三个框中更新。
这个过程应该是不刷新页面的。
【问题讨论】:
标签:
javascript
jquery
asp.net
asp.net-ajax
【解决方案1】:
如果您使用网络表单,您可以在网络表单中使用 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>