0

我在我的 Div 标记中一个一个地单击下一个按钮来加载 html 页面,如下面的代码所示。但是根据要求,我想在每个页面加载后停止/中断我的循环。但是当我再次单击下一个按钮时,我的变量没有得到增加它的价值。

 function loadFiles() {

      var files = ['index2.html', 'index.html','index3.html','index4.html'];
      var i=1;
      while(i<=5)
      {
           alert(i+'')
           var file = files[i];

           $('#tabpage_1').load(file + '');

           document.getElementById('txtPageNo').value = i; 
           i++;
           break;

      }
 }

所以我想在循环中断后增加我的变量。

4

3 回答 3

1

在函数之外定义变量,这样它就不会每次都初始化。

 var i=1;
    function loadFiles() {

                var files = ['index2.html', 'index.html','index3.html','index4.html'];

                while(i<=5)
                {
                alert(i+'')
                var file = files[i];

                $('#tabpage_1').load(file + '');

                document.getElementById('txtPageNo').value = i; 
                i++;
                break;

                }
于 2013-09-26T12:55:01.363 回答
0

因为break没有更新。

一旦

document.getElementById('txtPageNo').value = i; 
           i++;

语句被执行,循环由于中断而终止。

于 2013-09-26T12:54:25.820 回答
0

只需删除 break 语句!你的 i 变量的位置是它应该在的位置。将它移到你的函数之外会为该范围内的所有函数设置它,不是很有用!break 只是做了它应该做的事情,那就是打破循环!如果要中断循环,则必须针对特定条件执行此操作。

于 2013-09-26T12:59:59.767 回答