问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么用c#写二级联动? 要求dropdownlist绑定两个表格的。

发布网友 发布时间:2022-04-27 12:18

我来回答

5个回答

热心网友 时间:2022-04-27 13:47

这个设置大类表的dropdownlist的回传属性为真,先绑定这个下拉列表,然后在Tab的Selectedchange事件里根据Tab的选中值去绑定小表的下拉框.这个不需要类啊,只需要数据库的操作

给你一个例子吧,刚写的

前台

<div style="margin: 5px auto; width: 90%; vertical-align: middle;">
<table>
<tr>
<td>
表分类选择   <asp:DropDownList runat="server" ID="ddlTabCategory" AutoPostBack="True" OnSelectedIndexChanged="ddlTabCategory_SelectedIndexChanged">
</asp:DropDownList></td>
<td>
 
具体表选择
<asp:DropDownList runat="server" ID="ddlTabDetail" AutoPostBack="True" OnSelectedIndexChanged="ddlTabDetail_SelectedIndexChanged">
</asp:DropDownList></td>
</tr>
</table>
</div>

后台

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ddlBind(this.ddlTabCategory, TableCategoryInfo.getCategoryInfo(), "TableCategoryName", "TableCategoryId");
}

}

#region 绑定表分类信息和具体表名称
//绑定分类
protected void ddlTabCategory_SelectedIndexChanged(object sender, EventArgs e)
{
ddlBind(this.ddlTabDetail, TableDetailInfo.getDetailsByCategoryId(this.ddlTabCategory.SelectedValue), "TableName", "TableDetailId");
}

/// <summary>
/// 绑定下拉列表
/// </summary>
private static void ddlBind(object sender, DataTable dt, string name, string id)
{
DropDownList ddl = sender as DropDownList;
ddl.DataTextField = name;
ddl.DataValueField = id;
DataRow newrow = dt.NewRow();
newrow[name] = "请选择一项";
newrow[id] = 0;
dt.Rows.InsertAt(newrow, 0);
ddl.DataSource = dt;
ddl.DataBind();
}
#endregion

ddlBind方法的第二个参数就是你去数据库里取得的结果,我这个是三层架构的,你看你自己的项目进行处理,传进去参数

热心网友 时间:2022-04-27 15:05

<select id="dept_lv" onchange="changeLv()"><option selected>---请选择---</option></select>
<select id="dept_pre"><option selected>---请选择---</option>
</select>

2个select
<script type="text/javascript">
window.onload=function()
{
var listcode = new Array();
listcode="从后台调用得到的一个数组,我是用AJAX.DLL"
var len = list.length;
var b = document.getElementById("dept_lv");
for(i=0;i<len;i++)
{
b.options.add(new Option(listcode[i],listcode[i]));
}
}
function changeLv()
{
var listcode = new Array();
var b = document.getElementById("dept_pre");
var lv = document.getElementById("dept_lv").value;//获得第一个select选择的值
list = "后台得到数组";//通过lv这个条件得到的。

var len = list.length;

b.length = 1;//让select保留第一个option

for(i=0;i<len;i++)
{
b.options.add(new Option(list[i],list[i]));
}
}
</script>

热心网友 时间:2022-04-27 16:40

这个你得写事件监听.选中表格 加载第二表格相应数据.
代码自己写.写不出问周围的人,这样深刻.我们写了也没意义

热心网友 时间:2022-04-27 18:31

用classTab的SelectedIndexChanged事件来关联stype就可以了,关联时把classTab的AutoPostBack属性设置为true.
在方法SelectedIndexChanged中实现的主要功能为:
将选订项的id绑定到xtype上。
主要Sql语句是"select * from xtype where cid=@cid"
其中@cid是classTab选中项的id.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 薏仁米是什么米呀?想煮着喝。求解 什么是薏米,赤小豆,有什么煮的方法 给你煮了小薏米什意思 我的世界1.7.2怎么需要一定杀敌数才能获得装备 我的世界如何在玩家击杀一定的人数后启动一个命令,pvp需要啊 minecraft计分板杀敌数统计 我的世界如何用指令获得一把杀敌数1000的大太刀? 我的世界如何创建一个计算杀敌数的计分版 我的世界PVP怎么在Tab上记录自己杀的人 minecraft计分板如何杀敌数统计 我的世界生化大逃杀怎么弄杀敌人数 我的世界显示杀敌数的代码 我的世界1.7.10怎么弄击杀表 房子解压过户后还可以做房贷吗 两个DropDownList怎么样绑定一级和二级在一起,实现两级甚至是三级联动; 梦见大鱼但鱼头被狗咬掉 花呗借钱怎么用? 我的花呗怎么不能支付 画世界在哪看别人发的动态? 画世界的网址是什么? iPadiCloud密码忘记了,我照图片上面写的东西去操作了,但我的邮箱还没收到,怎么办啊? 说详 别人发照片在我邮箱里一个小时了,怎么还没收到 我的ipad 照片中的发送到电子邮箱里为什么总是不行? DropDownList中我做二级联动 朋友们说说净水器是插电的好还是不插电的好 高分求 dropdownlist的二级联动方法,关联的数据是从数据库中实时读取的 梦见自己去打胎没流血但医生给我要吃是什么意思? 教你正宗芥菜腌制方法,不加水不加油,爽脆下饭,放一年不会坏! 怎样可以获得所有钻? 《海岛奇兵》怎样刷钻石? 七子之歌和平宣言中哪几个表达了哪几句话表达了为了销毁证据十月十八和十九有_百度问一问 怎么用牛奶做奶油。 苹果音量对录屏有影响吗 辽宁省乡村男髙级教师2020年12月退休请问可申请延迟退休么? 辽宁省退休年龄延长了吗? 延迟退休国家政策还没有开始,可辽宁省18年就开始延迟 冤辽宁省私自延长退休怎么告冤 延迟退休政策定了,辽宁人快看看你啥时候能退休 iPhone手机录屏,自带声音功能太厉害了,可惜好多人都不会用 辽宁地区社保退休年龄是多少