日期:2014-05-16  浏览次数:20379 次

关于级联下拉框
我做了个动态级联下拉框,可以实现功能.但问题是提交以后,页面一刷新,2级下拉框里面的数据只留下一条记录,而其他的数据就没有了,急死人了,麻烦帮忙解决下,谢谢了
这个下拉框属于一对多的关系
一个工程类型有多个工程.
我希望点击一个一级下拉框,动态生成2级下拉框,而里面的数据是根据一级下拉框传过来的工程类型ID,来动态生成2级下拉框
代码:
/创建一个工程数组,存放所有的工程
var   GongChengList   =   new   Array( <%=gongChengList.size()%> );
var   gongChengIndex   =   2;

<%for(int   i   =   0;i <gongChengList.size();i++){
      GongCheng   gongCheng   =   (GongCheng)   gongChengList.get(i);
%>

/创建一个二纬数组   存放所有的工程   第一个元素存放工程相对应 "工程类型ID "
GongChengList[ <%=i%> ]   =   new   Array();
GongChengList[ <%=i%> ][0]   ==gongCheng.getGongchengTypeID()%> ";
GongChengList[ <%=i%> ][1]   =   " <%=gongCheng.getGongchengName()%> ";

<%}%>

/获得一级下拉框
var   select   =   document.getElementById( "gongchengTypeID ");

                  /获得二级下拉框
var   gongCheng   =   document.getElementById( "gongcheng ");

                  /获得一级下拉框点击的索引
var   selectIndex   =   select.selectedIndex;
                  /获得一级拉框点击的索引值(获得工程类型ID)
var   selectValue   =   select.options[selectIndex].value;





/判断一级下拉框传过来的值和数组里面工程类型ID是不是相同,如果是添加到2级下拉框中
for(var   i   =   0;   i <GongChengList.length;i++){

if(GongChengList[i][0]   ==   selectValue){
gongCheng[gongChengIndex]   =   new   Option(GongChengList[i][1]);
gongChengIndex++;

                }

}
gongChengIndex   =   2;


                  这都没问题,但一提交之后,2级下拉框中的数据只剩下一条,好比一个工程类型有3个工程,但刷新以后只显示一条,其他2条不见了


谢谢帮忙看下



------解决方案--------------------
用 ajax 吧
------解决方案--------------------
看题目还以为是 Ajax 实现的,原来是 asp ,那基本可以肯定是逻辑错误!

估计是那个 for 循环里的问题,重点查查 if 判断还有那个工程列表数组,LZ 自己认真调试一下就好了!