0

我有一个需要迭代的数据表。所以我有这个代码:

var tableSize = $('#j_idt11\\:dataTable tbody tr').length;
for(i = 0;i< tableSize;i++){
    var test1 = document.getElementById("j_idt11:dataTable:0:updFoodType").textContent;
    if(test1 == "food")
        alert("hey");
}

但我真的想在 for 循环中使用 i 。我想是这样的:

var tableSize = $('#j_idt11\\:dataTable tbody tr').length;
for(i = 0;i< tableSize;i++){
    var test1 = document.getElementById("j_idt11:dataTable:[i]:updFoodType").textContent;
     if(test1 == "food")
         alert("hey");
}

但这不起作用。我必须如何使用语法?谢谢!

4

2 回答 2

1

for循环与它无关,您需要将字符串连接起来,

for(var i = 0;i< tableSize;i++){
  var test1 = document.getElementById("j_idt11:dataTable:" + i + ":updFoodType").textContent;
  if(test1 == "food")
     alert("hey");
}

还要小心全局变量,您也应该i在本地范围内声明。

于 2012-07-25T18:30:50.440 回答
1

您只需要将 i 的值与您的字符串连接起来:

var tableSize = $('#j_idt11\\:dataTable tbody tr').length;
for(i = 0;i< tableSize;i++)
{
   var test1 = document.getElementById("j_idt11:dataTable:" + i + ":updFoodType").textContent;
   if(test1 == "food")
      alert("hey");
}
于 2012-07-25T18:31:07.607 回答