11548 sujets

JavaScript, DOM et API Web HTML5

Salut tout le monde,
voila j'ai une liste déroulante qui valide un formulaire mon code est le suivant:

<form name="DD" method="get" style="margin:0px;display:inline;">
 <input type="hidden" name="p" value="_internal_news">
  <table class="form">
  <tr class="form">
  <td class="form" />
  <td class="form">
  <select name="item" class="form"> 
  <option value="" onclick="valiDropDown('DD')">---------------------------- Select an item to edit ----------------------------</option>
   <option value="12" onclick="valiDropDown('DD')"> Xbox 360 to kick off console wars (2005-11-21 16:17:24)</option>
   <option value="5" onclick="valiDropDown('DD')">Edge news #2 (2005-11-16 16:31:23)</option>
   <option value="4" onclick="valiDropDown('DD')">Edge news (2005-11-16 16:30:39)</option>
   <option value="3" onclick="valiDropDown('DD')">New cantine name (2005-11-16 16:13:48)</option>
   </select>
  </td>
  <tr>
 </table>
</form>


et le javascript tout con:

function valiDropDown(form)
{
    document.forms[form].submit();
}


Le seul probleme c'est que ca marche sous Firefox mais pas sous IE Smiley sweatdrop
et la j'ai aucune idée pourquoi Smiley confused

Quelqu'un a déja eu ce probleme?
Super merci ca marche au poil ! Smiley smile

Ou c'est qu'on met le résolu ?
Modifié par Vianney (21 Nov 2005 - 17:53)
Bonjour,
N'utilisez pas onchange sur les listes déroulantes pour valider un formulaire, ça empêche la sélection au clavier.
Vianney a écrit :
Ou c'est qu'on met le résolu ?

En t'éditant : dans le titre de ton premier post Smiley smile
a écrit :
Bonjour,
N'utilisez pas onchange sur les listes déroulantes pour valider un formulaire, ça empêche la sélection au clavier.


Oui, il faut beaucoup insister la dessus :

Si vous utilisez onchange sur un select, une personne qui navigue au clavier ne pourra que lancer l'evenement du premier item à l'exclusion de tout autre.

Par ailleurs, utiliser des evenement javascripts d'auto submit sur des formulaires n'est jamais une bonne idée.

Jean-pierre
Bonjour,

Je suis interessé par l'astuce, c'est toujours bon à savoir, parce que moi je n'ai pas trouvé, même si je n'utilise jaws que pour les tests... Smiley smile

Jean-pierre
En fait, c'est tout con : Alt+Flèche bas, puis entrée quand tu as fait ton choix.
Mais bon, tant qu'on peut éviter une manip supplémentaire, c'est mieux.

<edit> et j'avais oublié de préciser : l'utilisateur lambda ne connaît pas cette combine. </edit>
Modifié par QuentinC (23 Nov 2005 - 21:56)