Assegnare una class ai ' TD ' presenti in uno script html

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Buonasera.... rieccomi....
Ho questa funzione ricavata con i vostri suggerimenti l'altro giorno...

HTML:
                     function coloracelle() { 

                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length;
            for(var i = 0; i < n; i++) {  var k = i+1 ;
	    var tastost = document.getElementById("forum"+k);
	         if(i%2==0) {
            a[i].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }else{
           a[i].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO";
	           }
                 } }

Che funziona benissimo... ma ho la necessità di assegnargli una class per distinguerli dagli altri script presenti nel blog... a mettere una class nel <td> lo so fare ma come dirlo alla funzione ?
Cioè cerco di essere più chiaro, ammettiamo che assegno per tutti i <td> presenti nel mio script la class = "stemmi", come la riporto nella funzione di sopra.... in modo che valga solo per quei td che hanno quella class ??
In teoria dovrei usare un if.... ?
cioè usando :
HTML:
 if(document.getElementById('TD').className==stemmi; ) { tutto il codice }
Secondo voi è la procedura corretta ??
Grazie . Saluti. Domenico.
 
Ultima modifica:

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Ho provato a fare cosi :

HTML:
<td class = "mis">... </td>

                     function coloracelle() {  
                         var c = document.getElementById('TD').className;
                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length;
            for(var i = 0; i < n; i++) {  var k = i+1 ;
	    var tastost = document.getElementById("forum"+k);
	         if(i%2==0 && c=="mis") {
            a[i].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }else{
           a[i].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO"; 
	           }
                 } }

Ma non va... cosa ho errato ??
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Visto qualche errore e messo apposto... ma neanche va...

HTML:
                     function coloracelle() {  
                         var c = document.getElementsByTagName('TD').className;
                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length;
            for(var i = 0; i < n; i++) {  var k = i+1 ;
	    var tastost = document.getElementById("forum"+k);
	         if((i%2==0) && (c==mis)) {
            a[i].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }else{
           a[i].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO"; 
	           }
                 } }
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Ho fatto cosi e funziona sulla pagina web

HTML:
                     function coloracelle() {  
                  
                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length; 
            for(var i = 0; i < n; i++) {  var k = i+1 ;  
	    var tastost = document.getElementById("forum"+k);
	         if((i%2==0) && (a[i].className=="mis")) { 
            a[i].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }
             if((i%2!=0) && (a[i].className=="mis")) { 
           a[i].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO"; }
	           } 
                  }

Ma quando inserisco lo script nel blog piattaforma blogger dai numeri.... a volte compare il colore del button, altre volte quelle delle celle.... secondo voi come mai ??..

E poi tipo la parola Orleàns mi compare la è come segno identificato.... e non posso usare li il replece con e&acute.... la textarea non permette questo....
Mi aiutate per cortesia....
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
Ho fatto cosi e funziona sulla pagina web

HTML:
                     function coloracelle() {  
                  
                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length; 
            for(var i = 0; i < n; i++) {  var k = i+1 ;  
	    var tastost = document.getElementById("forum"+k);
	         if((i%2==0) && (a[i].className=="mis")) { 
            a[i].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }
             if((i%2!=0) && (a[i].className=="mis")) { 
           a[i].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO"; }
	           } 
                  }

Ma quando inserisco lo script nel blog piattaforma blogger dai numeri.... a volte compare il colore del button, altre volte quelle delle celle.... secondo voi come mai ??..

E poi tipo la parola Orleàns mi compare la è come segno identificato.... e non posso usare li il replece con e&acute.... la textarea non permette questo....
Mi aiutate per cortesia....

Ciao,

questa fantomatica classe che vuoi assegnare ai td cosa deve fare, è un'aggiunta al codice scritto, o altro.

Per la textarea non ho capito.

Valeria.
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Buon giorno Valeria, subito vado a risponderti..

Nel blog chiaramente ci sono vari script che vengono eseguiti, e se inserissi quest'ultimo che ho fatto senza assegnare una class ai td, anche gli altri td prensenti nel blog si colorerebbero.... quindi assegnato class e per lo meno questo pericolo scongiurato.... solo che adesso lo script funziona tutto bene ma solo i colori delle celle e del button li assegna a fatti suoi, ma questo solo nel blog, nelle mie prove su una pagina web funziona benissimo.....

Forse è incompatibilità di qualcosa con la struttura del blog....

Per la textarea, stesso problema... su una pagina web normale se ad esempio scrivo Orlèans nella textarea non crea problema... inserisco nel blog ed ecco che a posto della e accentata mi esce il simbolo di non lettura del carattere....

Grazie per la tua accortenza :)
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
Buon giorno Valeria, subito vado a risponderti..

Nel blog chiaramente ci sono vari script che vengono eseguiti, e se inserissi quest'ultimo che ho fatto senza assegnare una class ai td, anche gli altri td prensenti nel blog si colorerebbero.... quindi assegnato class e per lo meno questo pericolo scongiurato.... solo che adesso lo script funziona tutto bene ma solo i colori delle celle e del button li assegna a fatti suoi, ma questo solo nel blog, nelle mie prove su una pagina web funziona benissimo.....

Forse è incompatibilità di qualcosa con la struttura del blog....

Per la textarea, stesso problema... su una pagina web normale se ad esempio scrivo Orlèans nella textarea non crea problema... inserisco nel blog ed ecco che a posto della e accentata mi esce il simbolo di non lettura del carattere....

Grazie per la tua accortenza :)

Ciao, vuoi colorare alcuni td e button tramite un css?

Valeria
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Valeria io già ho colorato le celle e i button con quella funzione che ho postato.... e che mi avete suggerita voi, e in una normale pagina web funziona benissimo....
Solo quando inserisco tale script nel blog mi crea problemi, perchè le celle e i button si colorano a casaccio e quindi ci sarà qualcosa che inteferisce con il blog....
Devo usare per forza una class per i td di questo script altrimenti tutti i td presenti nel blog si colorerebbero...

adesso chiedevo se sapevate e magari darmi un suggerimento di come mai nel blog mi crea questo problema...

Poi anche la textarea.... nellla pagina web normale i caratteri accentati nella textarea me li legge senza problemi, nel blog quando incontra un carattere accentato mi da al suo posto il carattere che non l'ha riconosciuto.... e non posso usare la funzione replace in una textarea.... :(
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
Ciao,

per il problema con le lettere accentate ne abbiamo discusso qualche post fa.

Cosa metti nella classe che intedi chiamare miss

Valeria.
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Per le lettere accentate si hai ragione ed intatti mettendo :

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

funziona a meraviglia.... ma non nel blog :(

e ti posto il primo td che ho nella lista... chiaramente c'è ne sono circa 120 e con gli indici progressivi :

HTML:
<td id="1" class="mis" align="center"><INPUT id ="forum1" class="button1" TYPE="button" VALUE="Chiuda Immagine" onclick="piccola('img1');"/><div id="fot1"><p  id="immaga1"></p></br><textarea class="area" id ="tex1"  name="fine1" cols="6" rows="1"  style="display:block"></textarea><textarea class="area1" id = "text1" name="fine11" cols="16" rows="1" style="display:none"></textarea><p  id="immagaint1"></p><textarea class="area1" id = "textins1" name="fine111" cols="16" rows="1" style="display:none"></textarea></div></td>

é qualcosa di abominevole ma è una seria di textarea che compaiono o scompaiono a seconda dei clik..

Mi spiace ma purtroppo i miei script sono cosi.... :(
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
Vai a sapere cosa non fa funzionare una determinata applicazione, controlla tutti gli script, nomi variabili assegnazioni, id ecc....


Elimina parte di codice di volta il volta, per vedere quale da problemi.

Impossibile rispondere, se offline funziona e sul blog no.


Valeria.
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
OK.... infatti me sa unica soluzione.....

Grazie della pazienza.... :)

Alla prossima e non è una minaccia giuro. :D

Domenico.
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Buonasera, per cominciare ho compreso l'errore dove sta....

Giacchè la funzione :

HTML:
                     function coloracelle() {  
                  
                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length; 
            for(var i = 0; i < n; i++) {  var k = i+1 ;  
	    var tastost = document.getElementById("forum"+k);
	         if((i%2==0) && (a[i].className=="mis")) { 
            a[i].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }
             if((i%2!=0) && (a[i].className=="mis")) { 
           a[i].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO"; }
	           } 
                  }

conta quanti TD ci sono nella pagina... chiaramente nel blog conterà anche i TD presenti in altre tabelle che non centrano nulla con lo script dello stemmario.... quindi falsa la numerazione totale e i colori non sono corrispettivi nella tabella interessata...

Quindi ho pensato che bisognerebbe trovare solo i TD con la class = "mis" e li solo associare il controllo successivo e il colore.... Ho buttato giù questa funzione...

HTML:
                     function coloracelle() {  
                  
                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length; 
            for(var i = 0; i < n; i++) { 
          if(a[i].className=="mis") { 

            var t = i;
// cioè intenderei cosi di memorizzare il valore dell'indice " i " in quel momento.. e memorizzarlo in un variabile t. 
                              var k = t+1 ;  
	    var tastost = document.getElementById("forum"+k);


	         if(t%2==0) { 
           a[t].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }
             if(t%2==1) { 
           a[t].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO"; }
	           } } }

ma non va.... dove erro ??
 

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
E' tutto errato... forse solo il Buonasera è corretto....
discorso inutile ed errato.... ....
perdonatemi..... davvero stavolta mi sono superato :(

torno alla function :

HTML:
                     function coloracelle() {  
                  
                       var a = document.getElementsByTagName('TD');
        var n = document.getElementsByTagName('TD').length; 
            for(var i = 0; i < n; i++) {  var k = i+1 ;  
	    var tastost = document.getElementById("forum"+k);
	         if((i%2==0) && (a[i].className=="mis")) { 
            a[i].style.backgroundColor = "TOMATO";
            tastost.style.backgroundColor  = "DODGERBLUE"; 
		    }
             if((i%2!=0) && (a[i].className=="mis")) { 
           a[i].style.backgroundColor = "DODGERBLUE";
          tastost.style.backgroundColor  = "TOMATO"; }
	           } 
                  }

e cerco di capire... il problema dov'è...
 
Ultima modifica:

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Rieccomi... come vedete io non demordo quando ho un problema a costo di fare notte in bianco...

il problema erano proprio i td precedenti.... se ammettiamo erano 18 i td delle tabelle precedenti a quelle presenti nello scrpt dello stemmario sballava il controllo dell'indice nello script di quest'ultimo.. ho quindi riassociato i " td " alle tabelle interne identificate con un id... e poi fatto cosi :

HTML:
                     function coloracelle() {  

               for(var j = 1; j < 8; j++) {  var tabella = document.getElementById("tabellas"+j);
                  
                       var a = tabella.getElementsByTagName('TD');
        var n = tabella.getElementsByTagName('TD').length; 

                   var tastost = tabella.getElementsByTagName('input')       


            for(var i = 0; i < n; i++) {  
	    
	         if((i%2==0) && (a[i].className=="mis") && (tastost[i].className=="button1") ) { 
            a[i].style.backgroundColor = "TOMATO"; 
             tastost[i].style.backgroundColor  = "DODGERBLUE"; 
		    }
             if((i%2!=0) && (a[i].className=="mis") && (tastost[i].className=="button1")) {
           a[i].style.backgroundColor = "DODGERBLUE"; 
           tastost[i].style.backgroundColor  = "TOMATO";
           }
	           } }
                                                
 }

e funziona :)
Per cortesia dateci una occhiata se vi va... e grazie :)
Domenico.
p.s. : buona notte :D
 
Discussioni simili
Autore Titolo Forum Risposte Data
I Assegnare dati fetch request ad una variabile globale Javascript 0
D assegnare risultato di una jquery ad una text Javascript 2
D [PHP] assegnare una classe PHP 1
E assegnare a una variabile il contenuto di un url (javascript) Javascript 0
V [WordPress] Assegnare id ad una tabella lista associandola ad un utente WordPress 0
C E' possibile assegnare all' attributo name di un form html il nome di una variabile php? PHP 6
G Assegnare a una variabile un valore PHP 1
M Assegnare un id o classe a una variabile php PHP 5
P Assegnare un codice php ad una variabile, possibile? PHP 6
L assegnare funzione solo ad una pagina PHP 1
B ciclo con array, assegnare una classe differente per ciascun risultato PHP 3
G assegnare un valore da passare in post, da una lista jQuery 6
T assegnare ad una classe uno stile Javascript 2
S Assegnare ad una variabile il valore di uno specifico campo di una tabella PHP 3
A Assegnare un "doctype" a una pagina html HTML e CSS 4
G Assegnare ad una variabile un pagina in php PHP 3
A textpattern: assegnare una classe alla section list HTML e CSS 0
A Assegnare rango ad una classifica in MS Access MS Access 1
S Assegnare valori mysql a checkbox PHP 0
JackIlPazzo Assegnare un id ad elementi con parser PHP 2
S assegnare src iframe tramite php PHP 3
D Assegnare codice cliente per poi richiamarlo PHP 1
M Assegnare classi diverse a div in un ciclo while PHP 3
S Assegnare link ad un marker di google maps Javascript 2
F Google maps: Assegnare icone personalizzate a markers estratti da mysql. Javascript 3
zighy Assegnare record ad un campo in base al valore di un altro campo PHP 2
J Assegnare un valore a un pulsante per poi spedirlo con un form Flash 0
L Come assegnare foto ad ogni giocatore? PHP 5
M Possibile assegnare un link ad un frame di un Movie clip? Flash 10
P Come assegnare un body tramite onclick? Javascript 1
Eugene Form - assegnare valore a check vuoto PHP 2
P C# Salvare una colonna del DataGridView XML 0
M pulsante per aprire una maschera che contiene controllo schede MS Access 0
M Leggere in un report il valore di una casella combinata di una maschera Database 0
D Miglior modo per estrarre le occorrenze di un elemento in un set di più file xml e quindi scrivere il risultato in una tabella Excel o magari in JSON XML 0
S [VB.NET]: Coordinate immagini dentro una PictureBox Visual Basic 0
I stampare una stringa echo PHP 2
MarcoGrazia Riprendere una sessione interrotta PHP 0
L Rendere una parte trasparente Photoshop 3
K [PHP] Aggiungere caratteri ad una stringa in base alla lunghezza della stessa PHP 2
K Visualizzare del html responsive in una Webview Sviluppo app per Android 0
otto9due Ordinare option di una select Javascript 5
N Come si crea una variabile dinamica da incrementare? Javascript 1
L Eliminazione di una pagina dalla gallery SEO e Posizionamento 0
otto9due Proteggere una cartella e file con password tramite .htaccess e .htpasswd Web Server 0
L Riempimento di una tabella al click di un bottone Javascript 1
R Variabile non risconosciuta dentro una funzione PHP 1
C ACCESS Aprire maschera se valore non presente in una combo MS Access 7
A media degli elementi estratti da una query MySQL 0
spider81man Eliminare primo ed ultimo carattere di una colonna MySQL 0

Discussioni simili