asp.net – 使用AJAX填充下拉列表
发布时间:2020-12-16 07:09:31 所属栏目:asp.Net 来源:网络整理
导读:我有3个下拉框,使用 HTML select标签创建.在页面加载时,第一个框有几个名称.现在,当我单击第一个框中的一个名称时,第二个框中会出现更多名称,当我单击第二个框中的名称时,第三个框中会出现更多名称.如何使用AJAX实现这一目标?我只能使用ASP.Net和MS SQL Ser
我有3个下拉框,使用
HTML select标签创建.在页面加载时,第一个框有几个名称.现在,当我单击第一个框中的一个名称时,第二个框中会出现更多名称,当我单击第二个框中的名称时,第三个框中会出现更多名称.如何使用AJAX实现这一目标?我只能使用ASP.Net和MS SQL Server.我是AJAX的完全菜鸟,我一直在教育自己,但没有什么可以解决的.我一直在寻找接近一周的代码.我查了w3schools.com,但是当我尝试那段代码时,它没有用.请帮帮我,请一步一步告诉我,为了使它工作所需要的东西,以及在哪里.我有一个快速接近的截止日期,并且在我的智慧结束时试图让它发挥作用.帮我!!
解决方法
我建议将三个下拉列表放在UpdatePanel中,并为每个更新面板添加一个触发器.然后,当值更改时,重新填充下拉列表并让updatepanel推送更新.还要保留会话状态,以防您想要提交值.
我面前没有编译器,但如果需要发布评论,我明天会发布代码. 工作实例 我正在使用visual studio和母版页附带的“传统模板”,所以请原谅内容占有者.但这应该证明我的意思: <%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="MultiDropDown.aspx.cs" Inherits="AppSettingsRetrieval.MultiDropDown" %> <asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server"> <script runat="server"> protected void Page_Load(object sender,EventArgs e) { if (!Page.IsPostBack) { String[] options = new[] { "ABC","DEF","GHI","JKL","MNO","PQR","STU","VWX","YZA" }; foreach (String option in options) { this.DropDownList1.Items.Add(new ListItem(option,option)); } } } public void DropDownList1_SelectedIndexChanged(object sender,EventArgs e) { this.DropDownList2.Items.Clear(); this.DropDownList2.Items.Add(new ListItem("--- Please Select One ---")); String[] options = new[] { "123","456","789","101","112","131","415","161","718" }; foreach (String option in options) { var str = String.Format("{0} {1}",this.DropDownList1.SelectedValue,option); this.DropDownList2.Items.Add(new ListItem(str,str)); } this.DropDownList2.Enabled = true; this.DropDownList3.Enabled = false; } public void DropDownList2_SelectedIndexChanged(object sender,EventArgs e) { this.DropDownList3.Items.Clear(); this.DropDownList3.Items.Add(new ListItem("--- Please Select One ---")); String[] options = new[] { "test","testing","tester","foo","bar","foobar" }; foreach (String option in options) { var str = String.Format("{0} {1}",this.DropDownList2.SelectedValue,option); this.DropDownList3.Items.Add(new ListItem(str,str)); } this.DropDownList3.Enabled = true; } </script> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <asp:ScriptManager runat="server" ID="ScriptManager1"></asp:ScriptManager> <asp:UpdatePanel runat="server" ID="UpdatePanel1" UpdateMode="Conditional"> <ContentTemplate> <fieldset> <legend>Consecutive Dropdown List</legend> <p> Primary Filter: <asp:DropDownList runat="server" ID="DropDownList1" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" AutoPostBack="true"> <asp:ListItem Text="---Please Select One---" /> </asp:DropDownList> </p> <p> Secondary Filter: <asp:DropDownList runat="server" ID="DropDownList2" OnSelectedIndexChanged="DropDownList2_SelectedIndexChanged" AutoPostBack="true" Enabled="false"> <asp:ListItem Text="---Please Select One---" /> </asp:DropDownList> </p> <p> Final Filter: <asp:DropDownList runat="server" ID="DropDownList3" Enabled="false"> <asp:ListItem Text="---Please Select One---" /> </asp:DropDownList> </p> </fieldset> </ContentTemplate> </asp:UpdatePanel> </asp:Content> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何使用EF Code First解释为枚举类型
- asp.net – MapRoute和MapPageRoute有什么区别?
- ASP.NET OutputCache和回发
- asp.net – 如何禁用提交行为的asp:ImageButton?
- asp.net-mvc – MVC3如何禁用/启用ActionLink
- ASP.Net MissingMethodException – 找不到“ctor”方法
- asp.net – 使用逗号分隔值搜索列
- asp.net – 将错误从HttpModule传递到MVC应用程序
- asp-classic – 使用VBScript查询Active Directory
- asp.net-mvc – 可以通过RedirectToAction传递模型吗?
推荐文章
站长推荐
- asp.net-mvc – 具有接受routeValues和htmlAttri
- asp.net-mvc – asp.net mvc我可以有一个视图为多
- asp.net-mvc-3 – MVC动作被调用两次?
- asp.net-mvc – ASP.NET MVC中的所有内置ActionR
- asp.net-mvc-3 – 使用纯HTML和MVC 3上传大文件
- asp.net-mvc-3 – ASP.NET MVC3维护导航历史
- .net – REST API:与身体的GET请求
- asp.net-mvc – 如何使用ASP.NET MVC对网页授权进
- asp.net-mvc-3 – ASP.NET MVC 3:将应用程序移动
- asp.net – 如何在网格行中显示枚举描述或名称?
热点阅读