Envoi de formulaire en javascript sous IE

Résolu/Fermé
tristan - 19 mai 2009 à 12:44
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 - 19 mai 2009 à 16:41
Bonjour,
Voila mon souci, J'ai créer un formulaire en avec un select qui retourne l'option choisi directement lorsque celle ci est cliquée. Pour se faire j'ai ajouter le petit bout de code suivant:</code>onclick="document.forms['formMarque'].submit();" </code>
Evidemment cela fonctionne très bien sous Firefox mais a mon grand desespoir je n'arrive pas a le faire marcher sous IE.
voici le formulaire en question: (dans sa version allégée :) )
<form id="formMarque" name="formMarque" method="post" action="tg.php" onclick="document.forms['formMarque'].submit();">
    <select name="marque"  style="width:300px;" ">
    <?php echo'<option style="font-style: italic">'.$_SESSION['marque'].'</option>' ; ?>
      <option>Aprilia</option>
      <option>Benelli</option>   
      <option>Bimota</option>   
    </select>
    <noscript><input type="submit" value="ok" title="" /></noscript>
</form>

et je recupere ma variable comme ceci:
$_SESSION['marque']= $_POST['marque'];

Quelqu'un aurais une idée???
merci d'avance

7 réponses

jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
19 mai 2009 à 13:10
L'évènement onclick n'existe pas pour la balise form me semble t'il
Mais tu veux faire quoi précisément ?
valider le formulaire quand la valeur du select est modifiée ?
Parce que dans ce cas il suffit de rajouter un onchange="document.forms['formMarque'].submit();" dans le select
1
j'ai trouvé !!
le onchange est a mettre dans la balise <select>.
merci pour tt.
1
en clair j'envoie ma variable "marque" et je la recupere pour selectionné le bon formulaire suivant:

<form id="formMarque" name="formMarque" method="post" action="tg.php" onclick="document.forms['formMarque'].submit();">
    <select name="marque"  style="width:300px;" ">
    <?php echo'<option style="font-style: italic">'.$_SESSION['marque'].'</option>' ; ?>
      <option>Aprilia</option>
      <option>Benelli</option>   
      <option>Bimota</option>   
    </select>
    <noscript><input type="submit" value="ok" title="" /></noscript>
</form>

<form id="formModele" name="formModele" method="post" action="tg.php" onclick="document.forms['formModele'].submit();">
<select name="modele"  style="width:300px;">	
	
<?php 
echo '<option style="font-style: italic">'.$_SESSION['modele'].'</option>';
if($_SESSION['marque'] == "Aprilia"){
echo '
	 <option value="cat9:RS 125 / 1993-2008">RS 125 / 1993-2008</option>
     <option value="cat9:RS 250 / 1995-1996">RS 250 / 1995-1996</option>    
   	 <option value="cat8:RS 250 / 1997-2002">RS 250 / 1997-2002</option>
     <option value="cat4:SVX 450 / 2006-2008">SVX 450 / 2006-2008</option>
     <option value="cat4:SVX 550 / 2006-2008">SVX 550 / 2006-2008</option>
     <option value="cat4:Shiver 750 / 2007-2008">Shiver 750 / 2007-2008</option>
     <option value="cat3:RSV 1000 all models / 1999-2008">RSV 1000 all models / 1999-2008</option>
     <option value="cat4:SL1000 Falco / 2000-2004">SL1000 Falco / 2000-2004</option>
     <option value="cat3:Tuono all models / 2003-2004">Tuono all models / 2003-2004</option>
     <option value="cat4:Futura / 2001-2004">Futura / 2001-2004</option>';
}

if($_SESSION['marque'] == "Benelli"){
echo '
     <option value="cat3:Tornado all models / 2002-2008">Tornado all models / 2002-2008</option>
     <option value="cat3:899 TNT / 2002-2008">899 TNT / 2002-2008</option>    
     <option value="cat3:Café Racer / 2002-2008">Café Racer / 2002-2008</option>
     <option value="cat4:500V Due / 1997-2001">500V Due / 1997-2001</option>
     <option value="cat6:530 BX Motard / 2008">530 BX Motard / 2008</option>';
}

if($_SESSION['marque'] == "Bimota"){
echo '

    <option value="cat4:DB6 Delirio all models / 2007-2008">DB6 Delirio all models / 2007-2008</option>
    <option value="cat4:DB5 Mille / 20006-2008">DB5 Mille / 20006-2008</option>    
    <option value="cat4:SB8 all models / 1998-2007">SB8 all models / 1998-2007</option>
    <option value="cat4:tesi all models / 2006-2007-2008">tesi all models / 2006-2007-2008</option>
    <option value="cat4:DB7 / 2008">DB7 / 2008</option>';

    </select>
     <noscript><input type="submit" value="ok" title="" /></noscript>
</form>
}


je teste avec onchange et je donne de mes nouvelles.
merci en tout cas !
0
ca marche sur FF (comme onclick) toujours pas sur IE...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
19 mai 2009 à 15:21
Déjà t'as un " en trop à la fin de la ligne suivante :
<select name="marque" style="width:300px;" ">

ensuite, quand tu dis que ca marche pas, ca veut dire que le formulaire n'est pas validé, ou que la variable de session n'a pas la bonne valeur ?
0
merci pour les guillemets... cela n'avait pas d'effet malicieux sur le code.

Le formulaire n'est pas validé. Je suis sur que cela vient du js car quand celui ci est desactivé sous IE, la validation par bouton fonctionne.
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
19 mai 2009 à 16:41
C'est pas ce que j'avais dit ?
^^
0