J'ai une boîte de sélection qui est peuplée avec toutes les options disponibles qu'elle peut avoir. Lorsqu'un utilisateur clique sur un enregistrement dans mon application, j'obtiens une réponse xml qui inclut la valeur de l'option pour cet enregistrement. Je voudrais utiliser javascript pour définir l'index sélectionné pour cette option particulière dans la boîte de sélection sans avoir à recharger la boîte de sélection. Existe-t-il un moyen facile de trouver l'index d'une option en fonction de la valeur ou du nom de l'option? Ensuite, je pourrais définir cette option comme l'index sélectionné.Comment sélectionner une option dans une boîte de sélection par la valeur de l'option en utilisant Javascript?
0
A
Répondre
3
je avais deuxième réponse de Toby. Cependant, si vous ne pouvez pas utiliser une bibliothèque existante pour une raison quelconque, il est assez facile à faire en javascript simple:
function selectByValue(el, value) {
for (var i=0, len=options.length; i<len; i++) {
if (el.options[i].value == value) {
el.selectedIndex = i;
break;
}
}
}
Si vous souhaitez utiliser à la place le texte de l'option, remplacer .value
avec .text
. Je suppose que vous vouliez dire "texte" puisque les options sélectionnées n'ont pas de propriété "nom".
0
Je suggère de jeter un oeil à une bibliothèque JS comme jQuery ou Prototype. Ils font ce genre de chose facile.
1
Ce sera assez proche de celle-ci:
function find_index(options, value) {
for (var i=0; i<options.length; i++) {
if (options[i].value == value) {
return i;
}
}
return -1
}
function set_selected_option(select_element, value) {
var index = find_index(select_element.options, value)
if (index != -1){
select_element.selectedIndex = index;
}
}
Questions connexes
- 1. dans une mise à jour, comment sélectionner une option dans une boîte de sélection?
- 2. Comment sélectionner une option en utilisant Modèle?
- 3. Comment obtenir sélectionner la valeur option boîte dans jQuery
- 4. Comment choisir plus d'une option dans une boîte de sélection
- 5. Comment manipuler une boîte de sélection en utilisant jquery?
- 6. Activer seulement la première option dans une boîte de sélection
- 7. Comment puis-je utiliser Jquery pour trouver et sélectionner une option Multi-sélection par la valeur?
- 8. Comment sélectionner un élément par sa valeur en utilisant une variable javascript?
- 9. créer une nouvelle option et injecter dans la boîte de sélection en utilisant mootools 1.2
- 10. sélection s: sélectionner la valeur en utilisant javascript
- 11. sélectionner dynamiquement plusieurs options dans une boîte de sélection
- 12. comment désactiver une option d'une boîte de sélection dans IE7
- 13. Comment faire pour sélectionner une option de liste de sélection
- 14. obtenir une valeur multiple de la boîte de sélection?
- 15. Comment faire sélectionner une option de sélection de tag dans jquery sans valeur
- 16. Comment sélectionner une option par classe?
- 17. Comment sélectionner une option dans la sélection par texte à l'aide de jQuery
- 18. remplir une boîte de sélection avec javascript
- 19. Comment faire pour faire défiler une boîte de sélection HTML vers une option sans sélectionner directement cette option?
- 20. Sélectionner et option autre que la valeur par défaut
- 21. Sélection d'une option dans une sélection HTML
- 22. jQuery: Comment sélectionner une option dans la boîte de sélection en fonction du texte HTML de l'option?
- 23. ne peut pas sélectionner l'option de la boîte de sélection
- 24. Comment obtenir une valeur de sélection en javascript?
- 25. Utiliser PHP $ _POST pour mémoriser une option dans une boîte de sélection?
- 26. comment sélectionner une option par index dans Capabara
- 27. Comment remplir une option de sélection ou une valeur de liste déroulante ajouter par 4?
- 28. javascript ajouter une option pour sélectionner
- 29. obtenir une valeur une option de sélection d'éléments avec jQuery?
- 30. Obtenir une valeur de sélection avec javascript
Merci! Cela a fonctionné. Comme une note latérale ... J'ai découvert par erreur que vous pouvez éviter tout le processus en faisant simplement ceci: document.getElementById ('my_selector'). Value = record_value; Cela semble sélectionner l'enregistrement approprié sans avoir besoin de trouver l'index du tout. IE va probablement exploser là-dessus, mais cela fonctionne dans tous les navigateurs non-FUBARed que j'ai essayés. – user77413
Tu sais, j'avais une intuition bizarre qui fonctionnait bien que je ne l'ai pas essayée. Bon à savoir cependant. – elo80ka
dropdownEl.value = la valeur fonctionne également dans IE. – einarq