2014-02-19 31 views
1

http://jsfiddle.net/KKH9a/16/如何獲得計數值循環中increamented

使用使用table1.rows[0].cells[1].innerHTML =>"Numbers" 試過連這個代碼控制檯嘗試table1.rows[0].cells[1].innerHTML!=null =>true

但如果我嘗試下面這段代碼:

HTML :

<table id="table1"> 
<tr> 
    <td>Value</td> 
    <td></td> 
</tr> 
<tr> 
    <td>Value</td> 
    <td>Value</td> 
</tr> 
<table> 

Javascript:

for (var i = 0; i < table1.rows.length; i++) { 
    for (var j = 0; j < table1.rows[i].cells[j].innerHTML; j++) { 
     if (table1.rows[i].cells[j].innerHTML != null) { 
      var count = 0; 
      count = count + 1; 
      alert(count); 
     } 
    } 
} 
+1

你使用沒有定義,對於初學者的'table1'變量。 –

+1

'j Cerbrus

回答

3
  1. table1未定義。您需要使用document.getElementById來獲取對錶格元素的引用。
  2. 在線2您正在指定j < table1.rows[i].cells[j].innerHTML。這沒有任何意義,應該更改爲j < table1.rows[i].cells.length
  3. 您需要完全移動你的count變量的循環外,否則將永遠等於1

你的代碼改成這樣:

var table1 = document.getElementById('table1'); 
var count=0; 

for(var i=0;i<table1.rows.length;i++) 
{ 
    for(var j=0;j<table1.rows[i].cells.length;j++) 
    { 
     if(table1.rows[i].cells[j].innerHTML!=null) 
     { 
      count++; 
      alert(count); 
     } 
    } 
} 

Working JSFiddle demo

+0

應該是正確的/接受的答案:-) – kcak11

+0

謝謝兄弟....我終於得到了我的答案。 – user3047780

+0

var table1 = document.getElementById('tablerecords'); \t var count = 0; \t爲(VAR I = 0; I user3047780

0

瞭解Javascript如何與HTML DOM進行交互。

目前您的代碼引用了「table1」,但這與ID爲「table1」的HTML元素無關。

介紹性的Javascript教程將解釋如何將DOM元素獲取到變量中。爲了使事情更容易,你可以使用JQuery或類似的東西。

一旦你過去了,你可以開始查看for循環邏輯中的錯誤(其他答案已經解決)。

+0

好吧..謝謝你會嘗試 – user3047780

0

首先,您不應該使用innerHTML來檢查節點中是否有東西。算了算孩子的數量,而不是:

if (table1.rows[i].cells[j].childNodes.length > 0) { 

其次,如果聲明count環路內,它將在每次迭代重置了。

Thirldy,我不明白你在用j < table1.rows[i].cells[j].innerHTML做什麼。而innerHTML是一個字符串,而不是一個數字。你應該使用它的parseInt。

+0

感謝您的意見兄弟.. :)剛剛第一次工作在它。花了時間按照我的方式正確得到...謝謝:) – user3047780

0

文件後使用JQuery細胞的數量計算準備

$(document).ready(function() { 
    var count = 0; 
    $('#table1 td').each(function() { 
     if($(this).html() != "") { 
      count++; 
     } 
    }); 
    alert(count); 
}); 

更新演示:http://jsfiddle.net/KKH9a/27/

+0

感謝兄弟.. :) – user3047780