红嘴蓝鹊怎么养:关于下拉列表框(dropdownlist)联动的问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/28 16:33:35
第一个列表中的选值触发第二个的选项,这个能实现,但是第一个列表选项不可选,固定在第一个值(从数据库中读出)
sub page_load(sender as object,e as eventargs)
dim conn as new sqlconnection(configurationsettings.appsettings("conn"))
dim cmd as new sqlcommand("select 类型名称,类型编号 from 房间类型",conn)
conn.open()
dim dr1 as sqldatareader=cmd.executereader()
d1.datasource=dr1
d1.datatextfield="类型名称"
d1.datavaluefield="类型编号"
d1.databind()
conn.close()
end sub
sub selected(sender as object,e as eventargs)
dim conn as new sqlconnection(configurationsettings.appsettings("conn"))
dim cmd as new sqlcommand("select 房间编号 from 房间 where 类型编号='" & d1.selecteditem.value & "' and 房间状态='N'",conn)
conn.open()
dim dr2 as sqldatareader=cmd.executereader()
d2.datasource=dr2
d2.datatextfield="房间编号"
d2.databind()
conn.close()
end sub

我想你的问题出在这里:第一级菜单不是不能动,而是因为只剩一个选项了

这是因为你两级菜单用的是同一个sqlcommand,连动第二级菜单后,sqlcommand重新筛选后取数据,这时第一级菜单由于被重新筛选后只剩下一个选择了.也就是说第二级菜单的触发影响了第一级菜单的内容.

解决方法:定义两个sqlcommand:sqlcommand1,sqlcommand2,分别用于绑定第一,二级菜单.这样sqlcommand2变化就不会影响sqlcommand1变化