jsp中的for循环问题

fancykiss 2003-08-04 03:19:53
各位大虾:小弟近日碰到一个jsp问题,我在jsp中的一个onload()中,使用了两个for循环,两个循环并列,第二个循环的判断条件依赖于第一个循环,但是,如果我不在两个for循环中间加一个alert()语句来延迟时间的话,第二个循环根本就不执行,小弟不知道是什么原因引起的?还望各位大虾不吝赐教,小弟在线等待
...全文
499 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
yoken 2003-08-04
  • 打赏
  • 举报
回复
可能是getDept()中调用了一个新线程,该线程中产生的值用于第二个循环
zhousm6 2003-08-04
  • 打赏
  • 举报
回复
不太可能吧,第一个循环没结束的话怎么会到第二个循环去呢?
可以在第二个循环之前先alert一下objShowForm.sltDept.length和objShowForm.sltCompany.options(i)的值看看。
另外,看一下javaScript的error内容应该会有帮助。
yoken 2003-08-04
  • 打赏
  • 举报
回复
可能是getDept()中调用了一个新线程,该线程中产生的值于第二个循环
fancykiss 2003-08-04
  • 打赏
  • 举报
回复
我的想法是:由于第二个循环的判断条件,依赖于第一个循环的结果,这中间有一个时间问题,可能是第二个循环只获得了第一个循环的部分结果,导致页面显示结果错误。
zhousm6 2003-08-04
  • 打赏
  • 举报
回复
怀疑第一个循环生成的objShowForm.sltDept不是一个数组,没有值或只有一个值,建议在用之前先判断一下objShowForm.sltDept.length是否为undefined.
fancykiss 2003-08-04
  • 打赏
  • 举报
回复
这里的alert()语句,只要放在第二个循环的if()之前都可以正常显示,否则结果错误。
guoxuezheng 2003-08-04
  • 打赏
  • 举报
回复
你用ALERT跟踪一下,看到哪出的错或是值没了。之后再告诉大家
yaray 2003-08-04
  • 打赏
  • 举报
回复
你所要实现的功能是?
hogcheng 2003-08-04
  • 打赏
  • 举报
回复
从技术角度来看,你说的情况不太可能发生.我觉得可能是你代码的问题.
你把alert()的位置挪到第二个循环的里面,看能不能执行?如果能,就说明你的代码有问题,不能的话,我也不知道了~~~~~~~~~~~~~~~
fancykiss 2003-08-04
  • 打赏
  • 举报
回复
在线等待啊
fancykiss 2003-08-04
  • 打赏
  • 举报
回复
当我把上面代码中的alert()去掉以后,下面的一个for循环就不会执行,我猜想是由于第二个循环的条件依赖于一个循环的结果,第二个循环检索需要时间,alert()恰好能提供时间延迟。但是如果不用alert(),不知道还有什么办法可以解决这个问题?
fancykiss 2003-08-04
  • 打赏
  • 举报
回复
function onload()
{
var objShowForm = document.showForm;
for(var i=0;i<objShowForm.sltCompany.length;i++)
{
if(objShowForm.sltCompany.options(i).value==objShowForm.companyId.value)
{
objShowForm.sltCompany.options(i).selected=true;
getDept();
}
}

alert("Wait for a while.");
for(var j=0;j<objShowForm.sltDept.length;j++)
{
if(objShowForm.sltDept.options(j).value == objShowForm.departentId.value)
{
objShowForm.sltDept.options(j).selected=true;
searchEmployee();
}
}
}
zhaoxichao 2003-08-04
  • 打赏
  • 举报
回复
代码贴出来!

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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