Cambiare i colori alle celle di una tabella html in modo sequenziale

Discussione in 'Javascript' iniziata da cavaliere123, 28 Settembre 2012.

Tag (etichette):
  1. borgo italia

    borgo italia Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    4 Febbraio 2008
    Messaggi:
    16.025
    Mi Piace Ricevuti:
    146
    Punteggio:
    63
    Sesso:
    Maschio
    Località:
    PR
    Home Page:
    ciao criric, funzia. mi sono permesso una modifica se non si sanno a priori le rige/celle

    Codice:
    <script type="text/javascript">
        var tabella = document.getElementById('tabellas');
        var td = tabella.getElementsByTagName('td');
        var count_tr = tabella.getElementsByTagName('tr').length;
    	var count_td = tabella.getElementsByTagName('td').length;
        for(var j = 0; j < count_tr; j++) {
        	for(var i = 0; i < count_td; i++) {
    			if(j%2==0) {
    		 		if(i%2 == 0){
                		td[i].style.backgroundColor = "red";
    				}else{
    					td[i].style.backgroundColor = "blue";
    				}
            	}else{
                	if(i%2 == 0){
                		td[i].style.backgroundColor = "blue";
    				}else{
    					td[i].style.backgroundColor = "red";
    				}
            	}
    		}
        }
    </script>
    edit
    una domanda: se volessi applicare a tutte le tabelle presenti in una pagina potrei sistituire
    var tabella = document.getElementById('tabellas');
    con
    var tabella = tabella.getElementsByTagName('table')
    ?
     
    Ultima modifica: 28 Settembre 2012
  2. cavaliere123

    cavaliere123 Utente Attivo

    Registrato:
    31 Luglio 2012
    Messaggi:
    415
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Borgo non mettere l'id tabellas come ha fatto Valeria :)
     
  3. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    Riprendendo l'esempio della tabella di prima l'unica idea che sono riuscito a partorire per accedere ad una particolare cella è questa
    Codice:
    var tabella = document.getElementById('tabellas');    
    tr = tabella.getElementsByTagName("tr");
    alert(tr[1].getElementsByTagName('td')[2].innerHTML);
    @Borgo
    Si , l'esempio di Valeria vale per tutte le tabelle della pagina
     
  4. Vale2

    Vale2 Utente Attivo

    Registrato:
    28 Maggio 2006
    Messaggi:
    446
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Occupazione:
    Ex Studente - Cerca collaborazione per Asp e Asp.N
    Località:
    Livorno
    Ciao borgo,

    ho sistemato il tuo esempio, una divisione in più e manca il riferimento per i tr

    Codice:
    <script type="text/javascript">
    	var a = document.getElementsByTagName('TD');
            var n = document.getElementsByTagName('TD').length;
            var b = document.getElementsByTagName('TR');
    	var m = document.getElementsByTagName('TR').length;
    	for(var i = 0; i < n; i++) {
            for(var j = 0; j < m; j++) {
    	    if(i%2==0) {
                a[i].style.backgroundColor = "red";
                }else{
                a[i].style.backgroundColor = "blue";
                if(j%2 == 0){
                b[j].style.backgroundColor = "blue";
    	    }else{
    	    b[j].style.backgroundColor = "red";
    	    }
    	  }
    	}
          }
    </script>
    Adesso se rimuovi // tutti i riferimenti ai td colora i tr riga rossa riga verde ecc...

    Valeria.
     
  5. cavaliere123

    cavaliere123 Utente Attivo

    Registrato:
    31 Luglio 2012
    Messaggi:
    415
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Praticamente fantastici :)

    me sa che alla mia domanda del richiamare in un solo comando la tot cella di tot riga...

    del tipo :

    HTML:
    document.getElementById("TABELLA").rows[2].cells[3].innerHTML;
    
    
    non c'è soluzione :(

    auff mi serviva proprio .. vabbè me invento qualcos'altro :)

    Buona serata e grazie ancora.
     
  6. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    ma quello che ti avevo postato non ti piace?
     
  7. cavaliere123

    cavaliere123 Utente Attivo

    Registrato:
    31 Luglio 2012
    Messaggi:
    415
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Aspita ma sai che nella confusione delle risposte non l'avevo mica letto.... :(
    Semplicemente scusami..... e chiaramente utilissima, è ciò che volevo ^_^
    Ascolta una curiosità, se volessi prendere uno spazio per postare i miei esempi proprio come pagina html c'è gratis e poi è difficile pubblicare la pagina ???
    Cosi mi è più facile far vedere le cose che combino :)
     
  8. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    Io per le prove ho uno spazio su Aruba, pago circa 35 euro l'anno con supporto php mysql
    solo html costa di meno
    Di gratuito che conosco c'è altervista , non so se c'è ne sono altri
     
  9. cavaliere123

    cavaliere123 Utente Attivo

    Registrato:
    31 Luglio 2012
    Messaggi:
    415
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
  10. Vale2

    Vale2 Utente Attivo

    Registrato:
    28 Maggio 2006
    Messaggi:
    446
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Occupazione:
    Ex Studente - Cerca collaborazione per Asp e Asp.N
    Località:
    Livorno
    Ciao,

    Aruba è tra i migliori per servizio qualità e prezzo, per i server condivisi.

    L'host su Server Win costa qualcosa in più rispetto al Server su Linux.

    Se scegli Server windows come hai letto puoi usare database Mysql Access e MSSQL, supporto per PHP e PERL l'offerta è buona, anche consiserando che Aruba offre spazio disco illimitato.

    Per i sottodomini, devi registrare un dominio e poi acquistare un sottodominio.

    Valeria.
     
  11. borgo italia

    borgo italia Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    4 Febbraio 2008
    Messaggi:
    16.025
    Mi Piace Ricevuti:
    146
    Punteggio:
    63
    Sesso:
    Maschio
    Località:
    PR
    Home Page:
    ciao
    non ho capito una cosa:
    se solo tu vuoi vedere come risultano i tuoi esempi a che ti serve uno spazio, se il file è html o htm con doppioclik sul nome del file e ti si apre la pag nel bw (o "apri file" dal bw), se è php ti fai il server locale e lo guardi sempre col tuo bw digitando http://localhost/cartella/nome_del_file.php
    se devi farli vedere ad altri allora si che ti può servire uno spazio.
    se hai già uno spazio per un tuo sito potresti fare nella root una cartella esempi e dentro caricarci i tuoi lavori.
    per vederli
    www.tuo_sito.it/esempi/esempio_1.htm
    o se il tuo host ha anche php
    www.tuo_sito.it/esempi/esempio_2.php
    o sottodomini
     
  12. cavaliere123

    cavaliere123 Utente Attivo

    Registrato:
    31 Luglio 2012
    Messaggi:
    415
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Buona sera anzi buona notte a tutti voi e grazie per i consigli come sempre preziosi :)
    Rispondendo a Borgo devo dire che ho installato sul mio pc anche il server locale XAMPP ma chiaramente me lo devo ancora ben studiare.... :)
    Ma non desidero violare le regole del forum ... e questa non è la sezione adatta... anzi già chiedo scusa per la mia domanda fuori tema... al limite se mi dite dove posso fare domande del genere nel forum ve ne sarò grato :)
    Buona domenica a tutti :)
     
  13. borgo italia

    borgo italia Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    4 Febbraio 2008
    Messaggi:
    16.025
    Mi Piace Ricevuti:
    146
    Punteggio:
    63
    Sesso:
    Maschio
    Località:
    PR
    Home Page:
    ciao
    per la tua domanda
    la sezione giusta è
    gestire un sito -> hosting
     
Sto caricando...

Condividi questa Pagina