<script language="javascript" type="text/javascript">
   var  strstr="<%=stock01 %>";
   var strmaxstock="<%=maxstock01 %>";
   var strCompName="<%=CompName01 %>";
   var strspeed="<%=speed %>";   var arr=new Array();
   arr=strstr.split(",");
   
   var arr01=new Array();
   arr01=strmaxstock.split(",");
   
   var arr02=new Array();
   arr02=strCompName.split(",");
   
   var arr03=new Array();
   arr03=strspeed.split(",");   function test()
   {
        for(i=0;i<arr.length-1;i++)
        {
              for(k=arr[i];k<=arr[i];k++)
             {
                document.getElementById("input"+i).value=parseInt(document.getElementById("input"+i).value)+1;
                setTimeout('test()',3600000/ arr03[i]  );
            } 
       }
   }
  </script>
 <body  onload="test()">
    
    <form id="form1" runat="server">
    <div>
      
       <% for (int i = 0; i < num; i++)
          { %>
          
       <input id="input<%=i %>"  type="text"   />
       <% } %>         </div>
          <script language="javascript" type="text/javascript">
           for(i=0;i<arr.length-1;i++)
           {
              for(k=arr[i];k<=arr[i];k++)
              {
                 document.getElementById("input"+i).value =arr[ i];
              }
         }
          </script>
    </form>
</body>数据只有一条记录就运行正常,  多记录就出现页面死了各位大侠帮分析下,小弟感谢了
    

解决方案 »

  1.   

    这样看看不出来啊,你弄点数据,尤其是哪个arr里面的
      

  2.   


    setTimeout('test()',3600000/ arr03[i]  ); 放在循环里出现  无限循环,导致页面卡死放在外又得不到,arr03[i]的值
    有什么办法解决?
      

  3.   

    setTimeout('test()',3600000/ arr03[i]  ); 想实现什么功能?有必要用吗?
      

  4.   

    要用到,因为页面体现出来,setTimeout('test()',3600000/ arr03[i]  ); 决定数据,累积变化效果.
      

  5.   

     document.getElementById("input"+i).value=parseInt(document.getElementById("input"+i).value)+1; 
                    setTimeout('test()',3600000/ arr03[i]  );  算出时间,在原来上加1效果;
      

  6.   


    var cycleI=0;//加个全局变量
    function test(){ 
      for(i=0;i <arr.length-1;i++){ 
        for(k=arr[i];k <=arr[i];k++){ 
          document.getElementById("input"+i).value=parseInt(document.getElementById("input"+i).value)+1; 
          if((i>=cycleI)){//如果循环到上次setTimeout的位置再继续调用setTimeout,免得死循环
            setTimeout('test()',3600000/arr03[i]); 
          }
        } 
      } 
    } 虽然不太明白你的需求,还是乱猜一下解决方案,呵呵
      

  7.   

    谢谢您的解决方案
     也是死循环
    我把代码简化了下function test()
    {
        for(i=0;i<arr.length-1;i++)
        {
            document.getElementById("input"+i).value=parseInt(document.getElementById("input"+i).value)+1;    
            setTimeout('test()',3600000/ parseInt(arr03[i])  ); // 写在这里是死循环
        }
         setTimeout('test()',3600000/ 50000); //写在这里就可以
     }写在外面无法得到每条记录  parseInt(arr03[i])  的值,   parseInt(arr03[i])的值大小,决定了每条记录对应的累积分变化速度.,值不同,对应记录变化速度是不一样谢谢,大家帮我小弟很急
      

  8.   

    function test() 

        for(i=0;i <arr.length-1;i++) 
        { 
            document.getElementById("input"+i).value=parseInt(document.getElementById("input"+i).value)+1;    
            setTimeout('test()',3600000/ parseInt(arr03[i])  ); // 写在这里是死循环 
        } 
     } 这样没有对实现 对某一对应记录自动累加   而是对所有记录累加 所以出现死循环吧