Javascript, entre 2 'function'

Résolu
linuxakros Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   -  
linuxakros Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
J'ai un petit soucis de javascript. J'ai 2 fonctions:

function premiere(id) {
var test = id;
if (test == "1")
{
var msg="bla1";
}
if (test == "2")
{
var msg="bla2";
}
...
..
.
}
function deuxieme(){
document.getElementById('madiv').innerHTML= msg;
}

et dans body
<a href="#" onclick="premiere('1');">1</a> - <a href="#" onclick="premiere('2');">2</a>
<div id="madiv"></div>

Le problème est que je n'arrive pas à avoir ce qu'il faut dans msg pour la 2ème fonction.
Ps: Si je mets var msg="bla3"; en dehors de la 1ère fonction, le message s'affiche bien pour bla3.

Comment faire la liaison entre les 2 fonctions ?


Merci de votre aide et bonne journée.
A voir également:

3 réponses

GallyNet Messages postés 434 Date d'inscription   Statut Membre Dernière intervention   387
 
Le mot clé "var" créer une variable en local, elle n'existe qu'entre les { } dans lesquel elle a été définit. Dans ton cas, la variable msg n'existe que dans les if :
// msg n'existe pas
if (test == "1")
{
var msg="bla1";
// msg existe
} 
// msg n'existe plus

Il te faut donc faire en sorte que la variable soit "global". En javascript, ça revient à ne jamais mettre de "var" devant, ou de la définir en dehors de tout code :
var test;
function premiere(id) { 
  msg = 'test';
  ...
}
function deuxieme(){
  document.getElementById('madiv').innerHTML= msg;
}
1
macgawel Messages postés 664 Date d'inscription   Statut Membre Dernière intervention   89
 
Bonjour.

function premiere(id) {
var test = id;
if (test == "1")
{
var msg="bla1";
}
if (test == "2")
{
var msg="bla2";
}
...
..
.
deuxieme (msg);
}
function deuxieme(texte){
document.getElementById('madiv').innerHTML= texte;
}

Tu dois appeler la fonction deuxieme à partir de ta fonction premiere, sinon tu n'exécute que la fonction premiere !
Et, pour éviter des éventuels conflits de variables, utilise des noms de variables bien différenciés...
0
linuxakros Messages postés 114 Date d'inscription   Statut Membre Dernière intervention   19
 
Merci de vos réponses GallyNet et macgawel.

J'ai essayé celle de GallyNet et ça fonctionne parfaitement.

Merci de vos aides et bonne journée !
0