difficulté à passer une variable en lien direct vers du js..

Eléphant du PHP | 101 Messages

11 juin 2006, 17:41

Bonjour le peuple javascriptien !

J'ai un léger soucis pour passer une variable, elle est plus ou moins capricieuse : (
dans mon code html la variable "selection_joueur" doit être transmise au code javascript pour qu'en executant la fonction anciens_num, les numéros 01 02 03 04 apparaissent à l'écran comme par magie

mon code html:
  <FORM name="Jeu" action="jeu.php" method="post">
  <INPUT type="hidden" name="string_numero">
  <A href="javascript:anciens_num();"><b>Vos derniers Numéros</b></a>|
  <A href="javascript:hasard();"><b>Hasard</b></A>|
  <A href="javascript:annulation();"><b>Annuler</b></A>

                  <SELECT name="selection_joueur" onChange="javascript:anciens_num();">
                  <OPTION selected>-- Selection --</OPTION>
                  <OPTION value="01-02-03-04">01-02-03-04</OPTION>                  
                  </SELECT>
	</FORM>
mon code js:
function anciens_num() {
	var index = document.Jeu.selection_joueur.selectedIndex
	var liste = document.Jeu.selection_joueur.options[index].value
	if (liste != '') {
		annulation();
		decoupe_string(liste)
	} else {
		alert("aucun choix précédent");
		return;
	}

	document.Jeu.string_numero.value = liste + "-";
	for(i=0;i<4;i++) {
		eval ("document.img" + selectionGrille[i] + ".src = img_num_rolloveron.src");		
	}
	recupere_jeu();
}
quand je le fais en passant par le SELECT ça marche, quand j'appuie sur annuler ça efface tout (logique) et quand je clique sur Vos anciens numéros il les affiche bien ! donc c'est bien la variable que j'arrive pas à passer par le lien direct "a href" ..
quand je clique sur le lien direct en premier sans passer par le select et l'annulation : / non seulement ça marche pas mais en plus ça bug tout
alors comment passer la variable "selection_joueur" directement dans le lien a href ?

j'ai essayé en rajoutant un
<INPUT type="hidden" name="selection_joueur" value="01-02-03-04">
mais là plus rien ne marche même en passant par le select
est-ce que je dois me concentrer autour du lien <A href="javascript:anciens_num();">

si quelqu'un pouvait me guider sur le chemin de la guérison.. je suis un peu perdu et désesperé : (

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

12 juin 2006, 11:08

Si tu rajoutes un champ hidden avec le même nom que le select, il va avoir du mal à les distinguer... si tu utilises un champ hidden, il faut virer le select et revoir ton code : au lieu de passer par options[selectedIndex] etc. tu peux utiliser directement le .value

A premiere vue, ce que tu as fait est pas mal, le soucis que tu dois avoir quand tu cliques sur le lien, c'est qu'il prend la valeur de la premiere ligne de ton select, c'est à dire "-- Selection --" et ca doit pas marcher terrible. ajoute un alert(liste) dans ton code tu y verras déjà plus clair sur ce qu'il fait :)

Eléphant du PHP | 101 Messages

12 juin 2006, 13:28

Effectivement juste en supprimant le selec et l'option dans le js ça marche impeccable je pensais pas que c'était aussi simple
un grand merci à toi je pensais que j'allais resté bloqué plus longtemps : D

c'est idiot mais je suis heureux : D