Comment obtenir de l'option de texte à partir d'une bibliothèque dijit.forme.Sélectionnez?
J'ai une bibliothèque dijit.forme.Sélectionnez sur ma page:
<c:set var="qualId" value="${previous.qualification.id}" />
<select id="qualification" name="qualification" dojoType="dijit.form.Select" onchange="checkForPHD()">
<option value="-1" label=" "> </option>
<c:forEach items="${requestScope.qualifications}" var="qualItem">
<c:choose>
<c:when test="${qualId eq qualItem.id}">
<option value="${qualItem.id}" selected = "selected">${qualItem.name}</option>
</c:when>
<c:otherwise>
<option value="${qualItem.id}">${qualItem.name}</option>
</c:otherwise>
</c:choose>
</c:forEach>
</select>
Puis un peu de javascript que je suis en train d'utiliser pour définir un texte au TEXTE de l'option choisie dans la case de sélection;
function checkForPHD() {
dojo.byId('clazzPHDMessage').innerHTML = dojo.byId('qualification')
.attr('displayedValue');
}
J'avais lu que le .attr('displayedValue") a été supposons que pour obtenir le texte de l'option sélectionnée dans une bibliothèque dijit.forme.Sélectionner, mais il ne semble pas faire beaucoup? .attr('value') obtenu que les valeurs ok mais j'ai besoin de le TEXTE?
OriginalL'auteur Nick Foote | 2011-03-01
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser bibliothèque dijit.byId() pour obtenir le widget de l'instance. Essayez d'utiliser ce code pour obtenir le texte sélectionné:
OriginalL'auteur Andrei
Semble que ce que vous voulez, c'est le innerHTML de l'option actuellement sélectionnée (
<option>THIS TEXT??</option>
). Je pense que cela devrait faire l'affaire. Boucle sur tous les sélectionner des options avec les getOptions et de trouver celui choisi, puis de retour à son innerHTML. Je ne sais pas sidijit.form.Select
a une propriété selectedIndex, mais qui pourraient l'aider trop.OriginalL'auteur Michael Berkowski
Vous devriez essayer d'obtenir le nœud sélectionné en premier, puis obtenir l'attribut que vous souhaitez, comme suit:
OriginalL'auteur Adalberto Costa