Comment obtenir la "valeur" d'un FilteringSelect & lt; sélectionnez & gt; au dojo?
Je suis en utilisant la bibliothèque dijit.forme.FilteringSelect de fournir un moyen pour sélectionner des valeurs dans un <select>. Le problème est que, lors de l'utilisation de dojo, l'étiquette est retournée à la place de la valeur du s.
Par exemple:
<select name="test" dojoType="dijit.form.FilteringSelect">
<option value="1">One</option>
<option value="2">Two</option>
</select>
Dojo est de retour le littéral "un" si cette option est sélectionnée, au lieu de la valeur de cette option, l'option "1". Le même est vrai pour les "deux" et "2".
Si dojo est supprimé à partir de cet élément, la valeur est retournée comme prévu.
source d'informationauteur mctom987 | 2009-12-04
Vous devez vous connecter pour publier un commentaire.
Le dojo, la façon de le faire serait d'utiliser bibliothèque dijit.byId('yourDijitId').attr().
Pour obtenir la valeur que vous voulez:
Pour obtenir la valeur affichée dans le filtrage de la sélection:
MODIFIER: attr() est dépréciée à 1,5, à 1.5 et au-delà, utiliser get()
Pour obtenir la Valeur de bibliothèque dijit.forme.FilteringSelect
Pour obtenir le displayedValue de bibliothèque dijit.forme.FilteringSelect
A couru dans le même problème et est venu avec cette solution.
La FilteringsSelect widget met la "Valeur d'Affichage" dans les deux
displayValue
etvalue
propriétés. Le seul moyen que j'ai trouvé pour obtenir la valeur de l'option est de passer par laitem
propriété qui répertorie les options sélectionnées propriétés.J'ai découvert que dojo crée des 2 éléments. Un en utilisant le nom, qui contient la valeur qui utilise le NOM de l'élément, et un autre qui contient l'étiquette de l'option, qui utilise l'ID de l'élément. Depuis que j'ai été à l'aide de document.getElementById(), c'était de retourner la valeur faux. À l'aide de la valeur à partir du nom de donne le résultat correct.
Pour les autres Googlers qui essaient de trouver l'OBJET SÉLECTIONNÉ dans FilteringSelect:
se réfère à l'élément sélectionné, dans le cas où vous avez besoin d'accéder à l'objet d'autres propriétés.
(hat tip pour Bitwize pour pointin à droite direction avec
dijit.byId("yourDijitId").item.value
)