多谢楼上的,下面的语句应该怎么理解
onChange="javascript:parent.leftframe.location.href='search.asp?menu=bycustomer&content='+(this.options[this.selectedIndex].value);this.selectedIndex=0
我原来的列表框为 onChange="MulSelect(1);" 而MulSelect(1)是读取库数据后生成的记录,原代码如下,能不能帮助改改,怎么将两个列表框值,在数值变动时,将选择值同时传到框架内另外两个页面,另外2个页面怎么接收?
<form name="frm" method="post">
<tr>
<td width="263" align="right" ><div align="center">
<p align="center" class="style4 style8">功能设置</p>
<table width="447" border="1">
<tr>
<td width="99" height="34"><div align="center" class="style10">范围</div></td>
<td width="251"><select style="width:155px;" name=menufw onChange="MulSelect(1);" readonly="readonly">
</select></td>
<td width="75"><span class="style4">* 请选择 </span></td>
</tr>
<tr>
<td width="99" height="34"><div align="center" class="style10">用户</div></td>
<td><select style="width:155px;" name=menuqx onChange="MulSelect(2);" readonly="readonly">
</select></td>
<td><span class="style4">* 请选择</span></td>
</tr>
</table>
<p> </p>
</div>
<td colspan="2" align="center"><p align="center"> <input type="submit" value="保存" name="B1" onclick="submit_forms()"></td>
</tr>
</form>
<script>
// 四级联动
var arrSel=["menufw","menuqx"]
arrData=[];
// 从数据库中读出四级联动的数据, 保存到 arrData 数组中(二维数组)
<%
dim conn,rs
set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Provider=SQLOLEDB.1;User ID=sa;password=123;Initial Catalog=;Data Source=;Persist Security Info=False"
set rs=conn.execute("select menufw,menuqx FROM menu")
%>
arrData[arrData.length]=["--请选择--"]
<%
do while not rs.eof
%>
arrData[arrData.length]=["<%=trim(rs("menufw"))%>","<%=trim(rs("menuqx"))%>"]
<%
rs.movenext
loop
rs.close:set rs=nothing
conn.close:set conn=nothing
%>
</script>
<script>
// 下拉框选择变化时触发的函数,用于重新生成其下级下拉框
// num : 下拉框的级数, 1 表示最顶级
function MulSelect(num)
{
var i,j,arrTemp=[];
// 取得表单当前触发的下拉框的父级下拉框的值, 存放于 arrTemp 数组中(即不需要改变的值)
for(i=0;i<num;i++)
{
arrTemp[i]=eval("document.frm."+arrSel[i]).value
}
if(num<arrSel.length)
{
// 对于触发下拉框的下一级的下拉框
with(eval("document.frm."+arrSel[num]))
{
// 先清空内容
length=0
// 对所有的记录遍历
for(i=0;i<arrData.length;i++)
{
var find=false
// 如果父级下拉框的记录不是当前选中的值,则跳过
for(j=0;j<num;j++)
{
if(arrTemp[j]!=arrData[i][j])
{
break;
}
}
if(j!=num)
{
continue;
}
// 这里已经可以保证第 i 项记录的数据属于当前选项的子数据
// 检查循环过程中是否已经添加了该选项,如果已有了, 则 fine = true
for(m=0;m<options.length;m++)
{
if(options[m].text==arrData[i][num])
{
find=true
}
}
// 若当前没有选项或者尚未添加该选项项,则添加之
if(length==0||!find)
{
options[options.length]=new Option(arrData[i][num],arrData[i][num])
}
}
// 递归调用生成下一级菜单的内容
MulSelect((num+1))
}
}
}
// 调用联动函数初始化下拉框
MulSelect(0)
</script>