J'ai un select
champ avec quelques options. Maintenant, je dois sélectionner l'un de ceux options
avec jQuery. Mais comment puis - je faire quand je ne connais que value
de option
qui doit être sélectionné?
J'ai le HTML suivant:
<div class="id_100">
<select>
<option value="val1">Val 1</option>
<option value="val2">Val 2</option>
<option value="val3">Val 3</option>
</select>
</div>
Je dois sélectionner l'option avec valeur val2
. Comment cela peut-il être fait?
Voici une page de démonstration: http://jsfiddle.net/9Stxb/
Réponses:
Il existe un moyen plus simple qui ne vous oblige pas à entrer dans la balise options:
Découvrez la méthode this jQuery .
la source
.val(["Multiple2", "Multiple3"])
. api.jquery.com/val/#val-value.val(x).change();
pour déclencher l'événement onChange de la sélection, il semble que la définition de val () ne le déclenche pas.Pour sélectionner une option avec la valeur 'val2':
la source
.val()
sur la sélection et essayez de choisir une valeur qui n'est pas là, tout désélectionnera.$("select[name=foo] option[value=bar]).attr('selected','selected');
ce qui a également bien fonctionné pour tous les navigateurs que j'ai testés.Utilisez l'
change()
événement après avoir sélectionné la valeur. De la documentation:Plus d'informations sur .change () .
la source
prop
,attr
etc. et progresse correctement tous les événements.Désélectionnez tout d'abord et filtrez les options sélectionnables:
la source
selected
. Tu voulais dire.prop()
?Mise en état en attente par valeur
la source
Pour moi, ce qui suit a fait le travail
la source
Je pense que le moyen le plus simple consiste à sélectionner val (), mais vous pouvez vérifier les éléments suivants. Voir Comment gérer la balise select et option dans jQuery? pour plus de détails sur les options.
Non optimisé, mais la logique suivante est également utile dans certains cas.
la source
Vous pouvez sélectionner n'importe quel attribut et sa valeur en utilisant le sélecteur d'attribut
[attributename=optionalvalue]
, donc dans votre cas, vous pouvez sélectionner l'option et définir l'attribut sélectionné.Où
value
est la valeur que vous souhaitez sélectionner.Si vous devez supprimer des valeurs sélectionnées précédemment, comme ce serait le cas si cela est utilisé plusieurs fois, vous devez le modifier légèrement afin de supprimer d'abord l'attribut sélectionné.
la source
La meilleure façon est la suivante:
la source
$('<select>').val('asdf')
n'a pas mis à jour la sélection pour afficher l'option actuellement sélectionnée. Cette réponse a résolu ce problème.une réponse simple est, à html
sur jquery, appelez ci-dessous la fonction par bouton ou autre
il est simple et fonctionne à 100%, car il est tiré de mon travail ... :) j'espère que son aide ..
la source
Il n'y a aucune raison de trop y penser, tout ce que vous faites est d'accéder et de définir une propriété. C'est ça.
D'accord, donc quelques dom de base: si vous faisiez cela en JavaScript, vous le feriez:
Mais vous ne le faites pas avec du JavaScript simple, vous le faites avec jQuery. Et dans jQuery, vous voulez utiliser la fonction .prop () pour définir une propriété, alors vous le feriez comme ceci:
Quoi qu'il en soit, assurez-vous simplement que votre identifiant est unique. Sinon, vous vous cognerez la tête contre le mur en vous demandant pourquoi cela n'a pas fonctionné.
la source
La façon la plus simple de le faire est:
HTML
jQuery
la source
Il est préférable de l'utiliser
change()
après avoir défini la valeur de sélection.En faisant cela, le code va fermer de changer de sélection par utilisateur, l'explication est incluse dans JS Fiddle :
JS Fiddle
la source
$('#graphtype option[value=""]').prop("selected", true);
Cela fonctionne bien où
#graphtype
est l'id de la balise de sélection.exemple de balise de sélection:
la source
la source
Utilisation:
Cela fonctionne pour moi. J'utilise ce code pour analyser une valeur dans un formulaire de mise à jour de fancybox, et ma source complète depuis app.js est:
Et mon code PHP est:
la source
.attr () ne fonctionne parfois pas dans les anciennes versions de jQuery, mais vous pouvez utiliser .prop () :
la source
Cela fonctionne à coup sûr pour Select Control :
la source
Mettez simplement ce code:
la source
Lien source
Utiliser la méthode jQuery val () pour la sélection de valeurs uniques et multiples dans DropDown
HTML
la source
Essaye ça. JavaScript simple mais efficace + jQuery le combo mortel.
SelectComponent:
Sélection:
Maintenant, votre option 4 sera sélectionnée. Vous pouvez le faire, pour sélectionner les valeurs au démarrage par défaut.
ou créez une fonction simple mettez la ligne dedans et appelez la fonction sur anyEvent pour sélectionner l'option
Un mélange de jQuery + javaScript fait la magie ....
la source
Est un ancien poste, mais voici une fonction simple qui agit comme un plugin jQuery.
Vous pouvez simplement faire quelque chose comme ceci:
Reson pourquoi l'utiliser est parce que vous changez le satemant sélectionné en DOM ce qui est pris en charge par le navigateur croisé et déclenchera également un changement pour que vous puissiez l'attraper.
Est essentiellement une simulation d'action humaine.
la source
case sensative
. Vous pouvez modifier votre zone de sélection dynamiquement comme suit,$("div#YOUR_ID").val(VALUE_CHANGED).change(); //value must present in options you selected otherwise it will not work
la source
Il semble y avoir un problème avec les contrôles déroulants de sélection qui ne changent pas dynamiquement lorsque les contrôles sont créés dynamiquement au lieu d'être dans une page HTML statique.
Dans jQuery, cette solution a fonctionné pour moi.
Tout comme un addendum, la première ligne de code sans la deuxième ligne fonctionnait en fait de manière transparente, la récupération de l'index sélectionné était correcte après avoir défini l'index et si vous avez réellement cliqué sur le contrôle, il afficherait l'élément correct, mais cela ne reflétait pas dans l'étiquette supérieure du contrôle.
J'espère que cela t'aides.
la source
Un problème que j'ai rencontré lorsque la valeur est un ID et le texte est un code. Vous ne pouvez pas définir la valeur à l'aide du code, mais vous n'avez pas d'accès direct à l'ID.
la source
ça marche pour moi
la source
Cela fonctionne bien
la source