这样会出现问题,怎么才能实现我选中一级下拉栏二级就会出现相应的信息
1条回答 默认 最新
- Yijing Sun 2021-09-28 15:00关注
你好,
你的问题原因在于首先你在page_load 事件中绑定了ddlEmiName的数据,但是选择ddlEmiTeam的时候,你清除了ddlEmiName的数据,所以在foreach 匹配的时候,这时候的item 是空. 所以我建议你在ddlEmiTeam 的SelectedIndexChanged事件中做绑定功能. 参照如下:<asp:DropDownList ID="ddlEmiTeam" runat="server" OnSelectedIndexChanged="ddlEmiTeam_SelectedIndexChanged" AutoPostBack="true"></asp:DropDownList> <asp:DropDownList ID="ddlEmiName" runat="server" ></asp:DropDownList>
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { List<teamemis> teamemi = new List<teamemis>() { new teamemis(){ Name="aaa"}, new teamemis(){ Name="bbb"}, new teamemis(){ Name="ccc"} }; ddlEmiTeam.DataSource = teamemi; ddlEmiTeam.DataTextField = "Name"; ddlEmiTeam.DataValueField = "Name"; ddlEmiTeam.DataBind(); } } protected void ddlEmiTeam_SelectedIndexChanged(object sender, EventArgs e) { ddlEmiName.Items.Clear(); string value = ddlEmiTeam.SelectedValue; List<Employee> employeesce = new List<Employee>() { new Employee(){ Name="aaa",ChineseName="ax"}, new Employee(){ Name="bbb",ChineseName="bx"}, new Employee(){ Name="ccc",ChineseName="cx"} }; foreach (var item in employeesce) { if (item.Name == value) { ddlEmiName.Items.Add(item.ChineseName); } } } public class Employee { public string Name { get; set; } public string ChineseName { get; set; } } public class teamemis { public string Name { get; set; } }
如果你的数据与我不同或仍有其他问题,你可以给出你的所有代码包括数据.
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥170 如图所示配置eNSP
- ¥20 docker里部署springboot项目,访问不到扬声器
- ¥15 netty整合springboot之后自动重连失效
- ¥15 悬赏!微信开发者工具报错,求帮改
- ¥20 wireshark抓不到vlan
- ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
- ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
- ¥15 stata安慰剂检验作图但是真实值不出现在图上
- ¥15 c程序不知道为什么得不到结果
- ¥15 键盘指令混乱情况下的启动盘系统重装