Stesso onclik per due funzioni diverse

cavaliere123

Utente Attivo
31 Lug 2012
416
0
16
Risalve ed eccomi con una nuova domanda posta sempre gentilmente :)

allora ho due funzioni una che inserisce una immagine in un div e l'altra che inserisce del testo in un textarea e

desidero farli partire insieme con un solo onclik fatto su un testo .

Praticamente :

HTML:
                        function prendik() { 
 
                             
                                   contn=""; 

           for(var i = 1; i <= immag.length; i++) { 
                    
                                
                                contn11 = '<img  id="img'+i+'" src="'+immag[i]+'"  onclick="grande(this.id);"   ondblclick="piccola(this.id);" title="titolo" alt="testo alternativo" />';

                            document.getElementById("immaga"+i).innerHTML = contn11; } 
                                                                
                              
                                        } 

 // e l'altra funzione :

function scrivistemma() {  
                                   stemtn = "";

                              for(var y = 1; y <= stemmak.length; y++) {
                               
                                            stemtn = stemmak[y]; 

                                    document.getElementById("tex"+y).value += stemmak[y];

                                       } }

e poi il link in oggetto :

HTML:
<div class="spieg"><a  class="inizio" href="javascript:void(0)" onClick=" prendik(); scrivistemma();" title="cominc">APRI</a></div>
ma chiaramente e assodato e quasi con certezza matematica che qualcosa erro... cosa ?...

ho letto in articolo questo :

" Si certo. Le due funzioni verranno lanciate una di seguito all’altra. Ad esempio: "
HTML:
<a href=http://www.html.it onclick=”primaFunzione(‘parametro’); secondaFunzione();”>visita HTML.it</a>
Devo mettere anche io un parametro ???
Grazie per le vostre risposte. Domenico.
 
ho provato pure a fare cosi :

HTML:
                       function insieme() { 
                    
                            prendik();
            
                          scrivistemma(); } 

 ...<a  class="inizio" href="javascript:void(0)" onClick="  javascript:insieme()" title="cominc">...

ma niente :(
 
Non lo so è peculiare alla domanda ma vi scrivo come operano le due funzioni, cioè scrivono entrambe in uno stesso <div> cosi :

HTML:
<div id="fot1";><p  id="immaga1"></p></br><textarea class="area" id ="tex1"  name="fine1" cols="6" rows="1" style="display:block"></textarea></div>
 
Buonasera Valeria, io non vedo due id uguali... a meno che non ho compreso la tua risposta :(
Se vuoi....
 
Ciao,

prova assegnando due id diversi alla textarea uno txt e l'altro txxt


Codice:
<div id="fot1";><p  id="immaga1"></p></br><textarea class="area" id ="tex1" id="texx1"  name="fine1" cols="6" rows="1" style="display:block"></textarea></div>


ad uno dei js cambi "texx"+y


Valeria.
 
ciao,
io ti devo riprendere sull'HTML :book:
il punto e virgola li non ci va
HTML:
<div id="fot1";>
 
Buonasera Valeria, io non vedo due id uguali... a meno che non ho compreso la tua risposta :(
Se vuoi....

Ciao

letto male


non ci sono id con nome identico, ma vedo solo una variabile istanziata con nome

contn="";

e inserita con nome

contn11 = ......

l'altra


temtn = "";

stemtn = stemmak[y];

occhio al += ad ogni click richiami la funzione e inserisci quello che è dichiarato per:


stemmak[y];

se usi un operatore di assegnazione = stemtn = stemmak[y];

nel document...... va = stemtn; no stemmak[y]; anche se è uguale

se usi stemtn = stemmak[y];

non ti serve dichiarare

temtn = "";

e

stemtn = stemmak[y];

salvo che per altri utilizzi.

Valeria.
 
Ultima modifica:
Salve e vi aggiorno che ho aggiustato e pulito di tutto quello che avete notato e anche di più... ( errori similari :( )...

ma il problema del onclik mi rimane.... :)
che ho dimenticato ancora ??
 
si che è possibile e la sintassi è giusta quindi il problema è da un altra parte
devi individuarlo
 
Ok.. ti farò sapere.... ormai è quasi una sfida... :)
ci devo riuscire da solo a capire dove erro.. ti farò sapere.
Grazie per le tue precisazioni.
 
Richiamavo la stessa funzione dell'onclik in tre parti diverse... avevo fatto copia ed incolla per sistemare secondo un mio ordine mentale e avevo lascio dietro i richiami alla funzione e poi alla seconda funzione avevo messo un parametro che non era quello che poi riportavo nell'if .....
Chiedo scusa.... ma purtroppo questi benedetti script che sto cercando di creare hanno una massa di dati fra titoli, immagini e descrizioni e fra file esterno e principale e ammettendolo chiaramente mancanza di conoscenza della sintassi a volte creo il caos da solo... però adesso funziona tutto e devo dire che è venuta proprio una bella scheda molto funzionale e dal bel design.
Grazie a tutti voi chiaramente di vero cuore :)
Domenico.
 
Non lo so è peculiare alla domanda ma vi scrivo come operano le due funzioni, cioè scrivono entrambe in uno stesso <div> cosi :

HTML:
<div id="fot1";><p  id="immaga1"></p></br><textarea class="area" id ="tex1"  name="fine1" cols="6" rows="1" style="display:block"></textarea></div>


Ciao,

rispondo qui, controlla gli operatori = , += , ++i , i++ "tex"+y

Codice:
function scrivistemma() {  
                                   stemtn = "";

                              for(var y = 1; y <= stemmak.length; y++) {
                               
                                            stemtn = stemmak[y]; 

                                    document.getElementById("tex"+y).value += stemmak[y];

                                       } }

Qui stemtn = ""; e stemtn = stemmak[y]; non servono visto che il valore da inviare lo dichiari .value += stemmak[y];

hai una dichiarazione di assegnazione per i div "tex"+y quindi più div, elementi tex1 tex2 tex3 ecc.... ma alla textarea hai messo solo text1, hai diverse textarea? += è un valore di continuazione della variabile inserita sull'ID.

Quindi se deve scrivere un testo di un array continuerà inserirlo ad ogni click.

Valeria.
 

Discussioni simili