0

繰り返す必要のあるdataTableがあります。だから私はこのコードを持っています:

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 に答える