多级Select控件联动取值问题

oupj 2007-03-06 07:35:13
<select name="s3" onChange="changeselect3(this.value)">
<option>==请选择镇区==</option>
</select>
…………
function changeselect3(locationid)
{ document.form1.s4.length = 0;
document.form1.s4.options[0] = new Option('==请选择学校==','');
for (i=0; i<subval4.length; i++)
{
if (subval4[i][0] == locationid)
{document.form1.s4.options[document.form1.s4.length] = new Option(subval4[i][2],subval4[i][1]);}
}
Response.write(locationid)
<% Session("DeptID") = 怎样在这里取得s3的值 %>
}
我已经试过<% Session("DeptID") = locationid %>取不到值,也试过<% Session("DeptID") = s3.selectindex%>不能执行
...全文
519 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
oupj 2007-03-06
  • 打赏
  • 举报
回复
谢谢您 我会试试的
xie_yanke 2007-03-06
  • 打赏
  • 举报
回复
那好办.再加个参数: window.location.href="RegClass.asp?DeptID="+locationid + "&s=" + 第一个选项.value + "|" + 第二个选项.value....;

回本页时,可以处理这个参数.这需要你用javascript编一定量的代码.如果不想这么麻烦,简单点儿可以:

他们不保持原值也可以.在其下列出,用户选择的项即可:比如:
<select>..</select><select>..</select>.....

您选择的是: .....(这里把分析的参数列出来)

下面显示刷新后你处理的结果.
oupj 2007-03-06
  • 打赏
  • 举报
回复
我也试过window.location.href="RegClass.asp?DeptID="+locationid;
但这样页面就会刷新,刷新后那些Select控件的值就会改变,能不能让他们保持原值
xie_yanke 2007-03-06
  • 打赏
  • 举报
回复
完成选择后,要提交给服务器,才能付值.不然服务器可不知道客户端选的什么.

比如: 最后一个选择完成之后.onchange="location.href='?s=' + this.vlaue;"
将参数以Get, 或Post提交服务器一次.进行付值.

可以刷新本页面,可以重定向,也可以利用ajax无刷新提交.怎么做都行.反正要对服务器提出一次请求.
oupj 2007-03-06
  • 打赏
  • 举报
回复
方便加QQ请教您吗,我的QQ号47098226
oupj 2007-03-06
  • 打赏
  • 举报
回复
是本页的
xie_yanke 2007-03-06
  • 打赏
  • 举报
回复
那个过程是在本页反映的,还是与本页选择后有关联的,还是根本无关的?要说清楚.
oupj 2007-03-06
  • 打赏
  • 举报
回复
因为其他过程要用到这个值
xie_yanke 2007-03-06
  • 打赏
  • 举报
回复
先说说为什么要付值给session,有什么用.或者说,你想干嘛.
oupj 2007-03-06
  • 打赏
  • 举报
回复
有具体代码吗
请大家帮帮忙
xie_yanke 2007-03-06
  • 打赏
  • 举报
回复
如果要传给后台代码中的变量,必须要向服务器提出提求,服务器接受请求并响应.完成变量付值.

你联动半天,都是在客户端操作的.变量怎么可能有值产生? 呵呵,别要钻牛角尖了.
oupj 2007-03-06
  • 打赏
  • 举报
回复
我不明白
这是ASP+JS,都在同一页面里
本身有一个全局DeptID的变量定义,我想能过选择S3后,把S3的值赋给DeptID,再用于其他过程或函数,请问怎样实现

注:这个是四级Select控件联动
xie_yanke 2007-03-06
  • 打赏
  • 举报
回复
二楼的告诉你了.页面脚本代码<>后台源码.两者不能直接沟通.
oupj 2007-03-06
  • 打赏
  • 举报
回复
原文
<script>
function changeselect3(locationid)
{ document.form1.s4.length = 0;
document.form1.s4.options[0] = new Option('==请选择学校==','');
for (i=0; i<subval4.length; i++)
{
if (subval4[i][0] == locationid)
{document.form1.s4.options[document.form1.s4.length] = new Option(subval4[i][2],subval4[i][1]);}
}
Response.write(locationid)
<% Session("DeptID") = 怎样在这里取得s3的值 %>
}
</script>

<select name="s3" onChange="changeselect3(this.value)">
<option>==请选择镇区==</option>
</select>
oupj 2007-03-06
  • 打赏
  • 举报
回复
这不是.Net的,是ASP
能不能指明,为了这个问题弄了三天也弄不好,急死了
孟子E章 2007-03-06
  • 打赏
  • 举报
回复
你这是典型的前台代码和后台代码分不清楚。
注意思考一下哪些是先执行,哪些是后执行

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧