关于ASP的下拉菜单的关联,急求!!
例子:就想是有两个下拉菜单,第一个选中一个里边是省,然后第二个下拉菜单自动出来该省的市!不想用太多的程序,希望在一个页面内完成!还有这两个下拉菜单中的内容都是在数据库中读...
例子:就想是有两个下拉菜单,第一个选中一个里边是省,然后第二个下拉菜单自动出来该省的市!
不想用太多的程序,希望在一个页面内完成!
还有这两个下拉菜单中的内容都是在数据库中读取的!
谢谢了!
数据是在一个表内读取的!
还有就不不是说的数据库的问题,是说的怎么读取到两个下拉菜单里边,让两个菜单关联!
让第二个菜单里边的内容跟着第一个菜单的内容改变!
不想刷新本页面! 展开
不想用太多的程序,希望在一个页面内完成!
还有这两个下拉菜单中的内容都是在数据库中读取的!
谢谢了!
数据是在一个表内读取的!
还有就不不是说的数据库的问题,是说的怎么读取到两个下拉菜单里边,让两个菜单关联!
让第二个菜单里边的内容跟着第一个菜单的内容改变!
不想刷新本页面! 展开
3个回答
展开全部
<%
dim cid,coid
cid = request("cid") 'cid 大类id
coid = request("coid") 'coid 中类id
set rs=server.createobject("adodb.recordset")
sql = "select * from edu_c" '表一 大类表
rs.open sql,conn,1,1
strOption1 = "<option value='' selected >==请选择所属市局==</option>"
do while not rs.eof
if cstr(rs("id")) = cstr(cid) then
strOption1 = strOption1 & "<option value='" & rs("id") & "' selected>" & rs("c_name") & "</option>"
else
strOption1 = strOption1 & "<option value='" & rs("id") & "'>" & rs("c_name") & "</option>"
end if
rs.movenext
loop
rs.close
if cid <> "" then
sql = "select * from edu_co where c_id=" & cid '表二 中类表 bid==表一中的id
rs.open sql,conn,1,1
strOption2 = "<option value='' selected >==请选择所属县局==</option>"
do while not rs.eof
if cstr(rs("id")) = cstr(coid) then
strOption2 = strOption2 & "<option value='" & rs("id") & "' selected>" & rs("co_name") & "</option>"
else
strOption2 = strOption2 & "<option value='" & rs("id") & "'>" & rs("co_name") & "</option>"
end if
rs.movenext
loop
rs.close
end if
if coid <> "" then
sql = "select * from edu_s where co_id= " & coid '表三 小类表 mid==表二的id
rs.open sql,conn,1,1
strOption3 = "<option value='' selected >==请选择学校==</option>"
while not rs.eof
if cstr(rs("id")) = cstr(sid) then
strOption3 = strOption3 & "<option value='" & rs("id") & "' selected>" & rs("s_name") & "</option>"
else
strOption3 = strOption3 & "<option value='" & rs("id") & "'>" & rs("s_name") & "</option>"
end if
rs.movenext
wend
rs.close
end if
%>
<select onchange="changeb(this.value)" name="cid"><%=strOption1%></select>
<select onchange="change(this.value)" name="coid"><%=strOption2%></select>
<select name="sid"><%=strOption3%></select>
<script language="javascript">
<!--
function changeb(cid){
location.assign("three.asp?cid=" + cid);
}
function change(coid){
location.assign("three.asp?cid=<%=cid%>&coid=" + coid);
}
-->
</script>
这个是我程序的一部分,实现的是三级菜单,全部是读取数据库,唯一缺陷是页面刷新。如果你会asp的话这段代码应该可以读懂。
dim cid,coid
cid = request("cid") 'cid 大类id
coid = request("coid") 'coid 中类id
set rs=server.createobject("adodb.recordset")
sql = "select * from edu_c" '表一 大类表
rs.open sql,conn,1,1
strOption1 = "<option value='' selected >==请选择所属市局==</option>"
do while not rs.eof
if cstr(rs("id")) = cstr(cid) then
strOption1 = strOption1 & "<option value='" & rs("id") & "' selected>" & rs("c_name") & "</option>"
else
strOption1 = strOption1 & "<option value='" & rs("id") & "'>" & rs("c_name") & "</option>"
end if
rs.movenext
loop
rs.close
if cid <> "" then
sql = "select * from edu_co where c_id=" & cid '表二 中类表 bid==表一中的id
rs.open sql,conn,1,1
strOption2 = "<option value='' selected >==请选择所属县局==</option>"
do while not rs.eof
if cstr(rs("id")) = cstr(coid) then
strOption2 = strOption2 & "<option value='" & rs("id") & "' selected>" & rs("co_name") & "</option>"
else
strOption2 = strOption2 & "<option value='" & rs("id") & "'>" & rs("co_name") & "</option>"
end if
rs.movenext
loop
rs.close
end if
if coid <> "" then
sql = "select * from edu_s where co_id= " & coid '表三 小类表 mid==表二的id
rs.open sql,conn,1,1
strOption3 = "<option value='' selected >==请选择学校==</option>"
while not rs.eof
if cstr(rs("id")) = cstr(sid) then
strOption3 = strOption3 & "<option value='" & rs("id") & "' selected>" & rs("s_name") & "</option>"
else
strOption3 = strOption3 & "<option value='" & rs("id") & "'>" & rs("s_name") & "</option>"
end if
rs.movenext
wend
rs.close
end if
%>
<select onchange="changeb(this.value)" name="cid"><%=strOption1%></select>
<select onchange="change(this.value)" name="coid"><%=strOption2%></select>
<select name="sid"><%=strOption3%></select>
<script language="javascript">
<!--
function changeb(cid){
location.assign("three.asp?cid=" + cid);
}
function change(coid){
location.assign("three.asp?cid=<%=cid%>&coid=" + coid);
}
-->
</script>
这个是我程序的一部分,实现的是三级菜单,全部是读取数据库,唯一缺陷是页面刷新。如果你会asp的话这段代码应该可以读懂。
展开全部
这个没难度啊 主要要是数据库建表的问题
把省建一个表 省名 主键
然后建一市的表 省名 外键 和 市名
数据的样子大概是
省表
湖南
湖北
市表
湖南 长沙
湖南 湘潭
湖北 ````
湖北 ````
ASP我没学 不会
但也应该也不难
是在 LISTBOX 加数据吧
是的话先查询到 DATASET的TABLES的虚拟表
中 然后用LISTBOS的DATASO````(还有4个字母 我不记得了 看帮助)
绑定数据就行了
把省建一个表 省名 主键
然后建一市的表 省名 外键 和 市名
数据的样子大概是
省表
湖南
湖北
市表
湖南 长沙
湖南 湘潭
湖北 ````
湖北 ````
ASP我没学 不会
但也应该也不难
是在 LISTBOX 加数据吧
是的话先查询到 DATASET的TABLES的虚拟表
中 然后用LISTBOS的DATASO````(还有4个字母 我不记得了 看帮助)
绑定数据就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
两个表
Province
id 省名称
Town
id 城市名称 atype
在Province表里输入省名称,然后在省下输入城市名称,把Province的id带到表Town里的atype,
当你查询的时候用语句
select * from Province,Town where Province.id=Town.atype
就可以了
我只能给你个思想,没时间把东西做出来,不好意思
Province
id 省名称
Town
id 城市名称 atype
在Province表里输入省名称,然后在省下输入城市名称,把Province的id带到表Town里的atype,
当你查询的时候用语句
select * from Province,Town where Province.id=Town.atype
就可以了
我只能给你个思想,没时间把东西做出来,不好意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询