View Full Version : [Javascript] Richiamare una funzione dando come parametro una variabile
Risolto: Soluzione al post 3 :D
Problema 2: (http://www.hwupgrade.it/forum/showthread.php?p=15358436) Risolto :D
Problema 3: (http://www.hwupgrade.it/forum/showthread.php?p=15358436#post15358436) Chi mi aiuta? :stordita:
La funzione che devo richiamare è questa
var classi= Array('m0','nomediv1','nomediv2','nomediv3','nomediv4','ecc');
function mostra(id){
for (indice=0;indice<20;indice++){
if (indice==id){
document.getElementById(classi[indice]).style.display = ''; }
else{
document.getElementById(classi[indice]).style.display = 'none'; }
}
}
Serve per una navigazione a TAB
Normalmente funziona così:
<a href="java-script:mostra('1');">
... ma vorrei richiamarla così
<a href="java-script:mostra(variabile);">
... solo che non funziona...
Sto entrando ora nella programmazione in JS, non siate crudeli :stordita:
wingman87
02-01-2007, 23:05
variabile di che tipo è?
EVVAI! La cosa strana della programmazione è che da frustrazione e soddisfazione allo stesso tempo :ciapet:
La variabile dovrebbe essere di tipo int
Cmq ho risolto:
quello che ho scritto in realtà funziona però non riuscivo ad impostare quella variabile.
Io scrivevo
<a onClick="funzione1(parametro);variabile=1;">
e non so come mai il valore di variabile non cambiava.
Ora ho visto che scrivendo in quest'altro modo funziona:
<a onClick="variabile=1;funzione1(parametro);">
Quello che volevo ottenere infine era assegnare il valore della variabile all'interno di funzione1, in questo modo:
<a onClick="funzione1(parametro,variabile);">
però il valore di variabile naturalmente rimaneva all'interno della funzione e non riuscivo ad utilizzarlo in funzione2
Ho risolto scrivendo la funzione1 in questo modo:
function funzione1(parametro,variabile){
funzione3(parametro);
window.variabile = variabile; //questo per assegnare il valore della variabile locale a quella globale
}
e quindi richiamandola semplicemente con
<a href="javascript:funzione2(variabile);">LINK</a>
##########################################
Se a qualcuno interessa la vera funzione e il suo utilizzo:
//questa parte per la gestione dei tab
var classi= Array('m0','main','hotel','rist','gall','map','plist','cont','form','foto','foto2');
function mostra(id){
for (indice=0;indice<20;indice++){
if (indice==id){
document.getElementById(classi).style.display = ''; }
else{
document.getElementById(classi[indice]).style.display = 'none'; }
}
}
// fine parte gestione tab
//questa parte per cambiare indirizzo ad un immagine
function ChangeImg(img,bk){
document.foto.src='img/wait.gif';
//immagine temporanea leggera che indica il caricamento, serve per far scomparire velocemente quella vecchia mentre si carica quella nuova
document.foto.src=img;
//da qui cambio l'indirizzo dell'immagine 'foto' con il valore di img
window.bk = bk; //questa variabile viene usata per indicare il "tab di provenienza", guarda più avanti
mostra('9'); //per visualizzare il tab 9
}
Nel tab 1 (che sarebbe un Div) scrivo:
[I]<a href="#" onclick="ChangeImg('img/main.jpg','1')">Visualizza immagine</a>
Cliccando qui:
cambio l'indirizzo dell'immagine foto, vado al tab 9 ed indico il tab di provenienza (sono nel tab 1 attualmente)
Ora nel tab 9 appare
<a href="javascript:mostra(bk);">Torna indietro</a>
che semplicemente ci riporta al tab di provenienza dichiarato prima ;)
##########################################
Spero che sia utile anche a qualcun'altro :D
Se volete vederlo in azione basta dirlo per il link in PM (è per un sito commerciale)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.