注册 登录
编程论坛 ASP技术论坛

[求助]联动二级下拉菜单问题

carlxxx 发布于 2007-01-24 11:25, 1009 次点击

大类表:id(编号) board(大类名)
小类表:id(编号) city_name(小类名) board_id(所属大类ID)


<script language="JavaScript">
<!--
var subcat = new Array();
<%
exec="select id,city_name,board_id from city"
set ors=server.createobject("adodb.recordset")
ors.open exec,conn,1,1
dim n
n=0
do while not ors.eof
%>
subcat[<%=n%>] = new Array('<%=trim(ors("board_id"))%>','<%=trim(ors("city_name"))%>','<%=trim(ors("id"))%>')<%
ors.movenext
n=n+1
loop
ors.close
set ors=nothing
%>
function changeselect(selectValue)
{
document.form.Shop_Road.length = 0;
document.form.Shop_Road.options[0] = new Option('请选择小类','');
for (i=0; i<subcat.length; i++)
{
if (subcat[i][0] == selectValue)
{
document.form.Shop_Road.options[document.form.Shop_Road.length] = new Option(subcat[i][1], subcat[i][2]);
}
}
}
-->
</script>

<%
exec="select id,board from board"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
%>


<select name="Shop_Area" onChange="changeselect(this.value)">

<option value="" selected>请选择大类</option>
<%
do while not rs.eof%>
<option value=<%=rs("id")%>><%=rs("board")%></option>
<%
rs.movenext
loop
rs.close
set rs=nothing
%>
</select>
<select name="Shop_Road">
</select>



现在的问题是:选取大类后,小类没有反应

[此贴子已经被作者于2007-1-24 11:25:49编辑过]

10 回复
#2
carlxxx2007-01-24 12:04
没有人知道吗?
#3
feifeiaini12007-01-24 12:33
subcat[<%=n%>] = new Array('<%=trim(ors("board_id"))%>','<%=trim(ors("city_name"))%>','<%=trim(ors("id"))%>')

好象是这句错咯把该成这个试哈喃
subcat[<%=n%>] = new Array('<%=trim(ors("city_name"))%>','<%=trim(ors("board_id"))%>','<%=trim(ors("id"))%>')
#4
carlxxx2007-01-24 13:22
还是不对嘛,不过还是谢谢你!还有哪位高手指点一下啊,谢谢啦~~~

出错状态:小类显示是空白,连“请选择小类”都看不见

没人指点一二吗?

[此贴子已经被作者于2007-1-24 13:31:27编辑过]

#5
carlxxx2007-01-24 13:32
在线等待各位高手帮忙~~
#6
carlxxx2007-01-24 13:37
帮帮忙,谢谢
#7
carlxxx2007-01-24 13:55
为什么没有人呢
#8
feifeiaini12007-01-24 14:04
你先看那三个参数是否有数据在看他们是不是想对应的

//1 小类是显示文字 2 是和大类相同的ID号 3 是小类的ID号

你比对哈````
`````````
#9
carlxxx2007-01-25 11:02
还是没找出原因,望明示,谢谢~~
#10
leaftest2007-08-13 15:50
顶出来, 我也在研究这样问题, 大家帮看
#11
yms1232007-08-13 17:07
function changeselect(selectValue)
{
document.form.Shop_Road.length =-1;
document.form.Shop_Road.options.add(new Option('请选择小类',''));
for (i=0; i<subcat.length; i++)
{
if (subcat[i][0] == selectValue)
{
document.form.Shop_Road.options.add(new Option(subcat[i][1], subcat[i][2]));
}
}
试试看。
1