23. november 2006 - 10:51
Der er
4 kommentarer og 1 løsning
Gennemløb af tabeller
Hej Eksperter. Jeg skal løbe et par tabeller igennem og skifte farve på dem. Hvorfor skifter nedenstående kode kun farve på den første tabel ? function stripe() { var divs,contDivs,d,table; divs=document.getElementsByTagName('table'); contDivs=[]; for(var i=0;i<divs.length;i++){ if(/\bcolumn\b/.test(divs[i].className)){ d=divs[i]; contDivs[contDivs.length]=d; } } for(var i=0;i<contDivs.length;i++){ table = contDivs[i]; fvalg=1; tr = table.getElementsByTagName("tr"); for(i=0;i<tr.length;i++) { td = tr[i].getElementsByTagName("td"); for(j=0;j<td.length;j++) { td[j].style.background = "red"; } } } } contDivs.length er 2, så den burde løbe begge tabeller igennem ik ? <html> .. <table class="column">... .. <table class="column">... ....
Annonceindlæg fra Deloitte
23. november 2006 - 11:09
#1
Se bort fra ovenstående.. :-) men hvorfor virker dette ikke ? function stripe() { var divs,contDivs,d,table,odd; divs=document.getElementsByTagName('table'); contDivs=[]; for(var i=0;i<divs.length;i++){ if(/\bcolumn\b/.test(divs[i].className)){ d=divs[i]; contDivs[contDivs.length]=d; } } for(var i=0;i<contDivs.length;i++){ table = contDivs[i]; odd=1; tr = table.getElementsByTagName("tr"); for(j=0;j<tr.length;j++) { td = tr[j].getElementsByTagName("td"); for(k=0;k<td.length;k++) { if(odd==1){ td[k].style.background = "blue"; odd=2; } else if(odd==2){ td[k].style.background = "red"; odd=1; } } } }
23. november 2006 - 14:32
#2
<ole> Hvorfor skriver du ikke, du får en JavaScript-fejl, når du loader siden? function stripe() { var divs,contDivs,d,table,odd; divs=document.getElementsByTagName('table'); contDivs=[]; for(var i=0;i<divs.length;i++){ if(/\bcolumn\b/.test(divs[i].className)){ d=divs[i]; contDivs[contDivs.length]=d; } } for(var i=0;i<contDivs.length;i++){ table = contDivs[i]; odd=1; tr = table.getElementsByTagName("tr"); for(j=0;j<tr.length;j++) { td = tr[j].getElementsByTagName("td"); for(k=0;k<td.length;k++) { if(odd==1){ td[k].style.background = "blue"; odd=2; } else if(odd==2){ td[k].style.background = "red"; odd=1; } } } } } /mvh </bole>
23. november 2006 - 14:33
#3
- og det manglende tegn var afslutnings-tuborg'en i din sidste 'else if' betingelse
23. november 2006 - 15:14
#4
tak ole - det var en flovmand.. :P
23. november 2006 - 15:29
#5
Hehe ... selvtak - og tak for points ;o)
Vi tilbyder markedets bedste kurser inden for webudvikling