Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1803 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Test sur liste deroulante qui bug !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Test sur liste deroulante qui bug !

n°1393431
guelaztapo​nd
Posté le 23-06-2006 à 09:58:46  profilanswer
 

Hello !
 
J'ai un test javascript sur une liste deroulante
 
<select>
<option value=9999> blablabla </option>
<option> les autres valeurs </option>
</select>
 
on submit => return chekformAjoutPanier
 
------------------------------------------------------
 
La fonction javascript:
 
if (document.AjoutPanier.taille.value==9999)
 alert("choisissez une taille" )
return (false)
 
------------------------------------------------------
 
Le probleme c'est que l'affichage des vetements et donc des listes est dans un WHILE (tant qu'il y a des vetements dans la tables, j'affiche)
 
Et donc, lorsque j'ai un seul vetement, le test fonctionne bien.
 
Si j'ai plus de deux vetements le test passe pas, il valide le form et me met 9999 en taille dans mon panier :s
 
Bizzare non ?

mood
Publicité
Posté le 23-06-2006 à 09:58:46  profilanswer
 

n°1393434
gatsu35
Blablaté par Harko
Posté le 23-06-2006 à 10:02:01  profilanswer
 

un code JS un peu plus complet ne te fera pas de mal, car là tu file keudal :o
 
déjà met des guillemets pour les attributs value="9999"
 
ensuite si tu donnais un exemple plus concret de ton truc au lieu d'une valeur :o, je suis sur qu'il  y a une couille ailleurs.
 
et puis maintenant c'est pas comme ça qu'on accède à un élément, mais par un id
 
document.getElementById("monid" );

n°1393444
guelaztapo​nd
Posté le 23-06-2006 à 10:12:21  profilanswer
 

un fichier veste_homme.php (par exemple)
dedans il affiche toute les vestes homme ...
dedans on appelle mon fichier test.js qui contient tout les test utile pour mon site.
 
dans test.js cette fonction

Code :
  1. function checkformAjoutPanier()
  2. {
  3. if (document.AjoutPanier.taille=="9999" )
  4.    {
  5.      alert("Veuillez choisir une taille !" )
  6.      return false;
  7.    }
  8. }


et donc dans veste_homme.php un formulaire

Code :
  1. <form name=\"AjoutPanier\" action=\"index.php?add=panier.php&id=".$data["id_article"]."&ajoutPanier=AJOUTER\" method=\"post\">
  2.      <td colspan=2><div align=center>
  3.    <select name=\"taille\">
  4.     <option value="9999">Choisissez votre taille</option>" );
  5.     $i=1;
  6.     while ($data["taille".$i]!="VIDE" )
  7.     {
  8.      echo ("<option>taille ".$data["taille".$i]."</option>" );
  9.      $i++;
  10.     };
  11.    echo ("</select>
  12.    </div>
  13.   </td>
  14.  </tr>
  15. </table>
  16. <br><br>
  17. <input name=\"ajout_panier\" type=\"submit\" value=\"Ajouter au panier\">
  18. </form>


le formulaire etant dans un WHILE général :

Code :
  1. while ($data= mysql_fetch_array($req))
  2. { }


En resultat, si un seul vetement le test marche , si plusieur il marche pas, valide et met 9999 en taille dans le panier.


Message édité par guelaztapond le 23-06-2006 à 10:22:43
n°1393450
anapajari
s/travail/glanding on hfr/gs;
Posté le 23-06-2006 à 10:16:56  profilanswer
 

== dans ton if
 
edit: d'ailleurs c'est pas la seule erreur ...  
Comme te l'a expliqué Gatsu tu ferais mieux d'utiliser l'id mais admettons que tu restes avec l'accès par formulaire.
 
Tu accèdes directement à ton select dans ton js et pas à l'option ( ou les options) selectionnées.
Il faut que tu récupères le selected index de ton select, puis que tu testes si la valeur de l'option correspondante est bien 9999

Message cité 1 fois
Message édité par anapajari le 23-06-2006 à 10:18:51
n°1393453
guelaztapo​nd
Posté le 23-06-2006 à 10:18:19  profilanswer
 

oups j'ai corrigé ! dans mon code il est bien "==" j'ai mal recopié ;)

n°1393454
xtof_83
Freeride Spirit
Posté le 23-06-2006 à 10:21:17  profilanswer
 

Applique les modifs indiqué par Gatsu
 
Puis reviend avec le code généré de la page, pas le code dans tes fichiers :o
 
Et merci de mettre le code dans des balises [ code] pour le forum c'est plus lisible
 

Code :
  1. Whouhhhh c'est beau


Message édité par xtof_83 le 23-06-2006 à 10:21:54
n°1393457
gatsu35
Blablaté par Harko
Posté le 23-06-2006 à 10:22:40  profilanswer
 

anapajari a écrit :

== dans ton if
 
edit: d'ailleurs c'est pas la seule erreur ...  
Comme te l'a expliqué Gatsu tu ferais mieux d'utiliser l'id mais admettons que tu restes avec l'accès par formulaire.
 
Tu accèdes directement à ton select dans ton js et pas à l'option ( ou les options) selectionnées.
Il faut que tu récupères le selected index de ton select, puis que tu testes si la valeur de l'option correspondante est bien 9999


petite note :  
en faisant un monselect.value, tu recupere directement la derniere valeur  sélectionnée :o

n°1393461
guelaztapo​nd
Posté le 23-06-2006 à 10:25:22  profilanswer
 

???? j'ai pas pigé Gatsu :(
 
- POur ce qui est des id je ne sais pas comment çà fonctionne.
- POur le monselect.value ???

n°1393469
anapajari
s/travail/glanding on hfr/gs;
Posté le 23-06-2006 à 10:41:32  profilanswer
 

guelaztapond a écrit :

Et donc, lorsque j'ai un seul vetement, le test fonctionne bien.
Si j'ai plus de deux vetements le test passe pas, il valide le form et me met 9999 en taille dans mon panier :s


gatsu35 a écrit :

petite note :  
en faisant un monselect.value, tu recupere directement la derniere valeur  sélectionnée :o


j'avais cru comprendre que c'était un select multiple :o

n°1393495
guelaztapo​nd
Posté le 23-06-2006 à 11:01:49  profilanswer
 

J'ai compris pourquoi çà bug mais je vois pas trop comment le corriger.
 
EN fait sachant j'ai un <option id="test">choisissez une taille</option>
 
et que cet <option> est dans un while, lors d'un seul vetement le test java fonctionne, mais si plusieur vetements il fonctionne pas !
 
Pourquoi ? parce que comme les <option> ont le meme id="test" il faut que TOUS soit different du "choisissez une taille" ! Or si je choisi pour le vetements n°2 le n°1 reste inchangé et donc => alert (veuillez selectionner une taille) !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Test sur liste deroulante qui bug !

 

Sujets relatifs
Liste chainéeTest de valeur
Remplir inputs via une liste deroulante(select)Composant pour afficher une liste de fichiers
Avoir les énoncés d'une liste en grastest de selection sur un select multiple
[CREATION] Base de données en PHP sans MySQL (PHP4 - test en cours)Développement web et test version
[CSS] Menu non centré verticallement + passage ligne dans liste 
Plus de sujets relatifs à : Test sur liste deroulante qui bug !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR