appeler une fct JS apres selection d`un choix multiple ? [RESOLU]

appeler une fct JS apres selection d`un choix multiple ? [RESOLU] - HTML/CSS - Programmation

Marsh Posté le 02-08-2002 à 19:18:51    

voila j`ai un petit menu deroulant a choix multiple
 
<form name="modif">
<select name="menu" onchange="remplissage();">
<option value="40" >item1
<option value="02" >item2
</select></form>
 
et je voudrais que qd je selectionne un item par exemple le 2, ca execute la fonction "remplisage" definie avant par:
 
<script language="JavaScript">
<!-- function remplissage()
{
id=document.modif.menu.options[document.modif.menu.selectedIndex].value
}
//--></script>
 
voila selement comme ca ca marches pas, la fonction je veux quelle entre ds la variable "id" le "value" de l`item (02 ou 40 ici)


Message édité par cybercouf le 05-08-2002 à 08:46:03
Reply

Marsh Posté le 02-08-2002 à 19:18:51   

Reply

Marsh Posté le 02-08-2002 à 20:43:29    

tu as deux moyens :
1-
script language="JavaScript">
<!--  
function remplissage(id)
{
alert(id)
}
//--></script>
 
<form name="modif">
<select name="menu" onchange="remplissage(this.options[this.selectedIndex].value);">
<option value="40" >item1
<option value="02" >item2
</select></form>
 
 
2-
<script language="JavaScript">
<!--  
function remplissage()
{
d=document.getElementById("menu" );
id=d.value;
alert(id)
}
//--></script>
 
<form name="modif">
<select name="menu" onchange="remplissage(this.options[this.selectedIndex].value);">
<option value="40" >item1
<option value="02" >item2
</select></form>


---------------
All we need is a soul revolution
Reply

Marsh Posté le 03-08-2002 à 20:03:25    

j'ai essayer tes deux solutions mais ca marches pas :-(
voici le code:

Code :
  1. <script language="JavaScript">
  2. <!-- function remplissage()
  3. {
  4. d=document.getElementById("menu" );
  5. id=d.value;
  6. alert(id);
  7. }
  8. //--></script>
  9. <BR><BR><BR>
  10. <form name="modif">
  11. <select name="menu" onchange="remplissage(this.options[this.selectedIndex].value);">
  12. <option value="item1" >Subaru
  13. <option value="item2" >Peugeot
  14. </select>
  15. </form>


 
il met une erreur "Object expected" au niveau de la ligne "onchange..."


Message édité par cybercouf le 03-08-2002 à 20:05:54
Reply

Marsh Posté le 03-08-2002 à 20:57:57    

:kaola: mes 2 codes marchent si tu sais faire un copier coller :kaola:


---------------
All we need is a soul revolution
Reply

Marsh Posté le 03-08-2002 à 21:18:59    

effectivement en fqisant un copier coller de tout ton code ca marches .. milles exuses :jap: :jap: :jap: :jap:  
 
par contre qd je l'ai inculs dans le reste de mon code ca marchais pas, mais bon g peut etre fait des erreures ailleurs donc je vais essayer de trouver ou ca cloche, puisque en effet ton code est parfait ;)  
.. et si j'ai toujours un pb je reviendrais l'expliquer ici :p

Reply

Marsh Posté le 03-08-2002 à 21:43:54    

l'erreur dans ce que tu montres c'est que tu appeles une fonction avec un parametre
remplissage(this.options[this.selectedIndex].value)
 
mais dans la definition de ta fonction il n'y a pas de parametre
function remplissage()  
 
->ca merde


---------------
All we need is a soul revolution
Reply

Marsh Posté le 04-08-2002 à 00:18:10    

kayasax a écrit a écrit :

l'erreur dans ce que tu montres c'est que tu appeles une fonction avec un parametre
remplissage(this.options[this.selectedIndex].value)
 
mais dans la definition de ta fonction il n'y a pas de parametre
function remplissage()  
 
->ca merde  




 
c normal c toi qui t'etais planté :  
 

Citation :


2-  
<script language="JavaScript">  
<!--  
function remplissage()  
{  
d=document.getElementById("menu" );  
id=d.value;  
alert(id)  
}  
//--></script>  
 
<form name="modif">  
<select name="menu" onchange="remplissage(this.options[this.selectedIndex].value);">  
<option value="40" >item1  
<option value="02" >item2  
</select></form>  


 
il a effectivement copié/collé  :D

Reply

Marsh Posté le 04-08-2002 à 13:09:10    

:o y'a pas un smiley qui s'enterre?... sans rancune M cybercouf  ;)  

HappyHarry a écrit a écrit :

 
 
c normal c toi qui t'etais planté :  
 

Citation :


2-  
<script language="JavaScript">  
<!--  
function remplissage()  
{  
d=document.getElementById("menu" );  
id=d.value;  
alert(id)  
}  
//--></script>  
 
<form name="modif">  
<select name="menu" onchange="remplissage(this.options[this.selectedIndex].value);">  
<option value="40" >item1  
<option value="02" >item2  
</select></form>  


 
il a effectivement copié/collé  :D  




---------------
All we need is a soul revolution
Reply

Marsh Posté le 04-08-2002 à 18:52:28    

ok, je comprends un peu mieux, j'ai adopté le premier exemple avec remplissage(id) { }
en tout cas merci de l'aide car je connais vraiment rien en JS comme je m'en sert que tres ponctuellement ;)
 
par contre j'aurais une autre petite question, car j'ai pas trouvé d'aide dessus, enfin si vous connessez de bon sites d'aide au JS je suis preneur ;)
 
donc ce que je chercher c la fonction qui permet de charger une page dans la meme fenetre, il me semble que c qqchose comme " window.xxx='page.php'
 
puis apres je veux pouvoir garder la variable id dans la nouvelle page pour pouvoir la re-exploiter en php, il me semble que c'est  
window.xxx='page.php?id'  ou  window.xxx='page.php?id'+id  
je sais plus trop

Reply

Marsh Posté le 04-08-2002 à 20:38:55    

CyberCouf a écrit a écrit :

donc ce que je chercher c la fonction qui permet de charger une page dans la meme fenetre, il me semble que c qqchose comme " window.xxx='page.php'
 
puis apres je veux pouvoir garder la variable id dans la nouvelle page pour pouvoir la re-exploiter en php, il me semble que c'est  
window.xxx='page.php?id'  ou  window.xxx='page.php?id'+id  
je sais plus trop




La fonction c'est window.location='tapage.php'
pour passer des parametre a ta page :
window.location='tapage.php?variable1=valeur1&variable2=valeur2 ...etc'
 
dans ta page.php tu peux recuperer les valeurs de $variable1 et  
$variable2


---------------
All we need is a soul revolution
Reply

Marsh Posté le 04-08-2002 à 20:38:55   

Reply

Marsh Posté le 04-08-2002 à 21:48:46    

ok merci,
..heu question con, tu mets: '  variable1=valeur1 '  
mais si je veux reprendre ma variable 'id' qui a déja une valeur (celle de la 'value';) je mets juste window.location='tapage.php?id' ?

Reply

Marsh Posté le 04-08-2002 à 22:11:12    

j'ai essyé ca marches pas, ou sinon c'est que j'ai un probleme ailleurs dans ma page.
Car en fait je recharge la meme page pour pouvoir utiliser la variable en  php suite aux choix de l'item.
 
L'idée est que quand on selectionne un item dans la liste déroulante, sa description située dans la base de donné s'affiche dans une textbox: <input size=50 name="le_nom" value=" description de l'item">

Reply

Marsh Posté le 04-08-2002 à 23:30:22    

Ca y est j'ai réussi !!!!!!! :hap:
 
en fait j'ai trouvé un excellent exemple, c'est la page d'index de PhpMyAdmin :crazy:!! au niveau de la sélection de la langue, c'est exactement ce que je voulais faire!:sol:
 
pour ceux que ça branche voici mon code :hello: :
 

Code :
  1. <form method="post" action="bb.php" target="_parent">
  2. <select name="id" dir="ltr" onchange="this.form.submit();">
  3. <?
  4. $result = mysql_query("SELECT * FROM $table1 ORDER BY catcode" );
  5. while($row = mysql_fetch_array($result))
  6. {
  7. if ($row["id"] == $id) { $selected = ' selected="selected"'; } else { $selected = '';}
  8. print(
  9. '<option value="'.$row["id"].'"'.$selected.'><BR>'.
  10. $row["catcode"].'  '.$row["prodname_eng"].'  ('.$row["prodname_fr"].')'
  11. );
  12. }
  13. mysql_free_result($result);
  14. ?>
  15. </select>
  16.                     <noscript><input type="submit" value="Go" /></noscript>
  17. <br>
  18. <INPUT size="100" name="prodname_eng"
  19. value="<?  if (!empty($id)) {print (mysql_result(mysql_query("SELECT prodname_eng FROM $table1 WHERE id=$id" ),0)); } ?>">
  20. </form>


Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed