Comme le dit la question, comment puis-je définir la valeur d'un contrôle DropDownList à l'aide de jQuery?
jquery
drop-down-menu
la chair
la source
la source
$("#mycontrolId").selectmenu('refresh');
pour refléter les changementsSi vous travaillez avec un index, vous pouvez définir l'index sélectionné directement avec .attr ():Cela le mettra à la première valeur de la liste déroulante.Edit: La façon dont je l'ai fait ci-dessus fonctionnait auparavant. Mais il semble que ce ne soit plus le cas.
Mais comme Han le souligne si agréablement dans les commentaires, la bonne façon de procéder est:
la source
select
balise n'a aucun attribut nomméselectedIndex
. C'est une propriété de l'objet DOM à la place. Par conséquent, le code devrait être:$("#mydropdownlist").get(0).selectedIndex = index_here;
$("#mydropdownlist").prop('selectedIndex', index_here);
Fonctionne également.Comme suggéré par @Nick Berardi, si votre valeur modifiée ne se reflète pas sur l'interface utilisateur, essayez:
la source
selectmenu
n'est pas défini dans ma version de jQuery, maischange()
fait l'affaire.Essayez cette approche très simple:
la source
$("#mycontrolId").selectmenu('refresh');
$('#mycontrolId').selectmenu('refresh').val(myvalue).attr("selected", "selected");
?Si votre liste déroulante est Asp.Net, le code ci-dessous fonctionnera correctement,
Mais si votre DropDown est un menu déroulant HTML, ce code fonctionnera.
la source
Meilleure réponse à la question:
par exemple:
ou
la source
définir la valeur et mettre à jour l' événement de la liste déroulante
la source
Il y a plusieurs façons de procéder. En voici quelques uns:
OU
la source
Je pense que cela peut aider:
Si vous procédez ainsi, vous ajoutez un élément sans texte. Ainsi, lorsque vous cliquez sur de combo, il n'apparaît pas, mais la valeur -1 vous a ajouté une sélection ultérieure avec $ (". AutoCompleteDepartment"). Val (-1); vous permet de contrôler si le combo a une valeur valide.
J'espère que cela aide n'importe qui.
Désolé pour mon anglais.
la source
Si vous avez juste besoin de définir la valeur d'une liste déroulante, la meilleure façon est
Si vous devez déclencher un script après avoir mis à jour la valeur de la liste déroulante, comme si vous définissez un événement onChange sur la liste déroulante et que vous souhaitez l'exécuter après la mise à jour de la liste déroulante, vous devez utiliser comme ceci
la source
Voici une fonction faite pour définir rapidement l'option sélectionnée:
Appelez cette fonction avec l'ID d'élément d'argument et la valeur sélectionnée; comme ça:
Il est utile lorsqu'il existe de nombreuses options de sélection à définir.
la source
Dans le cas où vous chargez tout
<options ....></options>
par appel AjaxSuivez ces étapes pour ce faire.
1). Créez une méthode distincte pour la valeur définie de la liste déroulante
pour Ex:
2). Appelez cette méthode lorsque l'appel ajax réussit toutes les tâches d'ajout html sont terminées
Pour Ex:
la source
Définir la
drop-down
selected
valeur et mettre à jour les modificationsIci, nous définissons d'abord la valeur
Model
et la mettons à jour sur le choixla source
// Format Html de la liste déroulante.
// Si vous voulez changer l'élément sélectionné en test2 en utilisant javascript. Essaye celui-là. // définir l'option suivante que vous souhaitez sélectionner
la source
L'utilisation de la réponse surlignée / vérifiée ci-dessus a fonctionné pour moi ... voici un petit aperçu. J'ai un peu triché pour obtenir l'URL, mais en gros, je définis l'URL dans le Javascript, puis je la configure via la réponse jquery ci-dessus:
la source
Pour les personnes utilisant Bootstrap, utilisez
$(#elementId').selectpicker('val','elementValue')
plutôt$('#elementId').val('elementValue')
que, car ce dernier ne met pas à jour la valeur dans l'interface utilisateur.Remarque : Même la
.change()
fonction fonctionne, comme suggéré ci-dessus dans certaines réponses, mais elle déclenche la$('#elementId').change(function(){ //do something })
fonction.Il suffit de poster ceci pour les personnes référençant ce fil à l'avenir.
la source