在函数内执行for后不执行代码

时间:2014-11-06 02:07:25

标签: javascript function iteration

好!我有一个问题,你不在循环结束时运行我的代码,上面和循环内部的工作正常,问题是循环后仍然没有执行代码。知道为什么会这样吗?

这是我的代码:

var arrayp = new Array();
function botonAdelante(tabl, pasos)
{
  var padreTabla = document.getElementById(tabl).rows;
  var cont = 0;

  for(var j = 0; j < padreTabla.length; j++)
  {
    var hijoTd = document.getElementById(pasos+ "-producto-" +j);
    var childArray = hijoTd.children;
    for(var i = 0; i < childArray.length; i++)
    {
      var check = document.getElementById(pasos+ "-CheckBox-" +j);
      if(check.type == 'checkbox' && check.checked==true)
      {
        arrayp[cont] = check.value;
        var algo = arrayp[cont];

        alert(arrayp[cont]);
        alert(arrayp);

        cont++;
        continue;
      };
    }
  }
  alert("It is in this part of the code does not work");
}

澄清:在长时间结束时发现“继续”,如果它也不起作用。

1 个答案:

答案 0 :(得分:0)

继续使用这样的混乱,但我感觉你的代码可能会抛出错误,因为cont可能会超出数组长度。无论这是否修复,我至少会添加一个检查以确保它不会引发异常。

请检查通过网络开发工具(Chrome中的F12)抛出的异常。

        for(var i = 0; i < childArray.length; i++)
        {
            var check = document.getElementById(pasos+ "-CheckBox-" +j);
            if(check.type == 'checkbox' && check.checked==true && arrayp.length <= cont)
            {
                arrayp[cont] = check.value;
                var algo = arrayp[cont];

                alert(arrayp[cont]);
                alert(arrayp);

                cont++;
                continue;
            };
        }