2016-12-04 1 views
-1

Ich möchte tbodies in Tabelle durchlaufen und den Inhalt jeder Zeile1 mit 'B' vergleichen.Iterate-Tabelle HTML

<table> 
    <tbody> 
     <tr><th>row1</th><td>A</td></tr> 
     <tr><th>row2</th><td>A</td></tr> 
    </tbody> 
    <tbody> 
     <tr><th>row1</th><td>B</td></tr> 
     <tr><th>row2</th><td>B</td></tr> 
    </tbody> 
    <tbody> 
     <tr><th>row1</th><td>C</td></tr> 
     <tr><th>row2</th><td>C</td></tr> 
    </tbody> 
</table> 

Wenn das tbody mit row1 Inhalt 'B' gefunden wird, will ich es mit verschwinden (display: none).

Wie kann ich das tun?

+0

Haben Sie versucht, selbst etwas zu schreiben? – Dekel

+0

Iterate mit was? Welche Programmiersprache benutzt du? Sie können jQuery und seine Selektoren verwenden, aber es ist keine Iteration beteiligt. – Arkoudinos

+0

Vielleicht ist das Iterieren nicht der richtige Ausdruck, um zu beschreiben, was ich will. Ich möchte jeden der Tabelle werfen den Inhalt der ersten Zeile überprüfen und es mit einem Wert vergleichen, wenn die Vergleichung erfolgreich ist, möchte ich, dass verschwinden, vielleicht mit display: none. – Sergio

Antwort

1
Var table = document.getElementByName('table').children; 

For(b = 1 ; b < table.length() ; b++) 
{ 
     Var cells = table[b].children; 
     for(c = 1 ; c < cells.length() ; c++) 
     { 
       If(cells[c].childNodes[0].innerHtml == 'row1') 
       { 
        If((cells[c].childNodes[1].innerHtml == 'B') 
        Console.log("jackpot"); 
       } 
     } 
} 
+0

Ok, danke. Ich werde es versuchen und ich sage es dir. – Sergio

+0

Am meisten willkommen, BTW, versuchen Sie es mit IDs auf Ihrer Tabelle, so dass Sie getElementById anstelle von getElementByName verwenden können, zumindest wird es viel weniger Wahrscheinlichkeit für Dinge schief gehen. –

+0

Hallo, ich habe es getan, aber es funktioniert nicht. Überprüfen Sie meine Antwort – Sergio