J'ai une fonction qui est appelée par Onbeforeunload. Dans je souhaite réinitialiser toutes les déposées mais je ne trouve pas la bonne méthode pour les réinitialiser à la valeur 0.
<head> <script type="text/javascript"> function displaymessage() { document.getElementsByTagName('select').value = 1; //or document.getElementsByTagName('select').options.length = 0; } </script> </head> <body> <form> <input type="button" value="Click me!" onclick="displaymessage()" /> </form> <select name="data[Rate][15][12][num_rooms]" id="r15ro12"> <option value="0">0</option><option value="1">1 Rooms</option> <option value="2">2 Rooms</option><option value="3">3 Rooms</option><option value="4">4 Rooms</option> <option value="5">5 Rooms</option><option value="6">6 Rooms</option><option value="7">7 Rooms</option> <option value="8">8 Rooms</option><option value="9">9 Rooms</option> </select> <select name="data[Rate][15][12][num_rooms]" id="r15ro12"> <option value="0">0</option><option value="1">1 Rooms</option> <option value="2">2 Rooms</option><option value="3">3 Rooms</option><option value="4">4 Rooms</option> <option value="5">5 Rooms</option><option value="6">6 Rooms</option><option value="7">7 Rooms</option> <option value="8">8 Rooms</option><option value="9">9 Rooms</option> </select> </body> </html>
10 Réponses :
Essayez ceci:
function displaymessage() { $("select").val("0"); }
Que diriez-vous de quelque chose comme:
function displaymessage() { $("select").each(function() { this.selectedIndex = 0 }); } this selects the first option (not necessarily having value = 0)
Merci Fabrizio pour l'aide, mais cela n'a pas fonctionné, ça me dirige.
Keith, au-dessus du code ne fonctionnera que si vous avez inclus la bibliothèque JQuery.
Merci, j'avais inclus mais une ancienne version, fonctionne bien maintenant. Tchin Tchin
avec code JavaScript brut, nous pouvons faire ce qui suit,
voilà un moyen de sélectionner la première option dans tous les ... mais jQuery est très pratique et fait la plupart des choses beaucoup plus facile. p> p> Sélectionnez code> S à l'aide de JavaScript natif;
Tout d'abord, vous ne devez pas utiliser le même nom / ID pour la variation différente. Il devrait être unique pour chaque étiquette. P>
dans la balise appelez la fonction comme, p>
p>
puis altérer votre amusement comme Affichage de la fonctionMessage () { var x = document.getelementsByTagname ("Sélectionnez"); pour (var i = 0; i <2; i ++) { document.getElementyID (x [i] .Id) .OPTIONS [0] .Sélectionné = "0"; } } p>
Essayez ceci:
$( 'select' ).each( function () { if ( $( this ).children().length > 0 ) { $( $( this ).children()[0] ).attr( 'selected', 'selected' ); } } );
Les solutions de jQuery que j'ai vues jusqu'à présent ne prennent pas en compte pour supprimer l'attribut précédent Cette solution ne conserve que un attribut sélectionnée code> si on existe, alors je pense que cette étape supplémentaire est requise:
sélectionné code> dans la première option et supprime tous les autres (le cas échéant). p> p>
$ ('# dropdownlistid'). val (""); p>
ou p>
$ ('# dropdownlistid'). Val ("0"); p>
Vous ne devez pas avoir plus d'un élément avec le même nom code> nom code> ou
ID code> comme
# r15ro12 code> et tous vos éléments de formulaire (
entrée Code>,
Sélectionnez CODE> etc.) doit être à l'intérieur du formulaire code>.
Je viens de faire une copie rapide et coller par exemple, je ne l'ai pas dans mon code, merci pour les commentaires, acclamations
OK, c'est bien! Vous vous demandez également pourquoi on voudrait réinitialiser les sélections sur
décharger code>? (en supposant que vous fermez une fenêtre contextuelle)