Js - evenement onLoad

Fermé
jer - 20 avril 2009 à 22:32
PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 - 21 avril 2009 à 08:22
Bonjour,
Bonjour,
J'aimerais initialiser une liste d'option en fonction d'un radio selectionné !
Le code fonctionne bien sauf dans le cas du chargement de la page... vu que mon js est appelé lors du onClick sur un radio bouton !

Comment pouvoir lors du chargement de la page appeler la methode js ?
J'ai essayer avec un onLoad dans le body mais il ne veut pas aller !

Merci a qui pourra m'aider !

CODE :
<body >

<form name="form_selects" id="form_selects" action="identification.php" method="POST" >
		
			
			type: 
			<INPUT type="radio" name="os" value="0" checked onClick="test(this.form);">public
			<INPUT type="radio" name="os" value="2" onClick="test(this.form);">membre
			
			
			&nbsp;&nbsp;&nbsp;Dossier existant &nbsp;:
			<select name="list2" id="list2">
				<option value="-1" >...</option>

			</select>
			<input type="submit" value="test" name="ok" >
			
			
		
	</form>

2 réponses

PhP Messages postés 1770 Date d'inscription lundi 11 décembre 2000 Statut Membre Dernière intervention 23 décembre 2009 606
21 avril 2009 à 08:22
Bjr

Si tu écris
<body onload="test(this.form);">


ça ne fonctionnera pas !

Et pour cause : il faut bien comprendre ce que représente "this"

Ici il représente la balise <body> alors que dans le cas précédent il représentait respectivement le premier et le second bouton radio. Si pour les boutons radio this.form à un sens (en effet les boutons radio se trouvent dans un formulaire en tout cas ils devraient toujours s'y trouver) en revanche pour body ça ne signifie rien

modifie ton code test ainsi

function test()
{
  // Récupère le formulaire
  var frm = document.getElementById("form_selects");
  // Ensuite utilise frm
}


et dans body

<body onload="test();">

Une autre variante serait de passer l'ID du formulaire en paramètre

function test(frmId)
{
  // Récupère le formulaire
  var frm = document.getElementById(frmId);
  // Ensuite utilise frm
}


<body onload="test('form_selects');">


Voilà
2
yrejk Messages postés 12 Date d'inscription mercredi 25 juin 2008 Statut Membre Dernière intervention 21 avril 2009
20 avril 2009 à 23:46
petit up svp !
HELP mE
0