Réinitialiser la valeur d'une zone de sélection
Je suis en train d'essayer de réinitialiser la valeur de deux champs, structuré comme ceci,
<select>
<option></option>
<option></option>
<option></option>
</select>
<select>
<option></option>
<option></option>
<option></option>
</select>
jQuery,
$('select').each(function(idx, sel) {
$(sel).find('option :eq(0)').attr('selected', true);
});
Malheureusement, peu importe combien de façons je l'ai essayer, il n'a tout simplement pas se produire. Rien dans la console. Je n'ai aucune idée de ce qui se passe? Je sais qu'il y a une façon de le faire, vous pouvez le faire rien avec JS
EDIT:
J'ai compris que le problème se produit uniquement lorsque j'essaie de feu le code sur le clic sur un élément du dom, cependant, je sais que le code devrait être de travailler, parce que quand j'ai
$('p').click(function(){
console.log('test');
});
Il des sorties d'essai " pour la console, mais quand je inclure le code dans cette fonction, il ne se passe rien. Pourquoi est-ce?
source d'informationauteur OneChillDude
Vous devez vous connecter pour publier un commentaire.
Je suppose que vous ne voulez réinitialiser un élément unique. La réinitialisation d'un ensemble de la forme est simple: appeler ses réinitialiser méthode.
La façon la plus simple de "reset" sélectionnez un élément à régler ses
selectedIndex
de la propriété à la valeur par défaut. Si vous savez qu'aucune option n'est sélectionnée par défaut de l'option, il suffit de le sélectionner elemen ts selectedIndex de la propriété à une valeur appropriée:Cependant, depuis une option peut avoir sélectionné attribtue ou autrement être définie par défaut sur l'option sélectionnée, vous devrez peut-être faire:
Et méfiez-vous de la définition des attributs plutôt que de propriétés, ils ont des effets différents dans les différents navigateurs.
Cela fonctionne pour moi:
VIOLON
Encore à @RobG pur /vanille javascript réponse, vous pouvez rétablir la valeur "par défaut" avec
Il semble -1 désélectionne tous les éléments, null sélectionne l'élément par défaut, et 0 ou un nombre positif sélectionne l'index correspondant option.
source
Ce qui a fonctionné pour moi a été:
neRok touché sur cette réponse ci-dessus, et je suis juste en expansion.
Selon la peu datée, mais pratique O'Reilly livre de référence, Javascript: The Definitive Guide:
En tant que tel, le code javascript suivant sera "reset" Sélectionner un objet d'aucune option sélectionnée:
Notez que la modification de la sélection dans cette façon de ne pas déclencher la onchange() gestionnaire d'événement.
utiliser le
.val(")
setterjsfiddle exemple
J'ai trouvé un petit utilitaire en fonction d'un certain temps et je l'ai utilisé pour la réinitialisation de mon formulaire d'éléments (source: http://www.learningjquery.com/2007/08/clearing-form-data):
... ou comme un plugin jQuery...