我的页面上有一个dijit.form.Select: 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
<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>
然后我试图用一些javascript来设置一些文本到从选择框中选择的选项的TEXT;
function checkForPHD() { dojo.byId('clazzPHDMessage').innerHTML = dojo.byId('qualification') .attr('displayedValue'); }
我读过.attr(‘displayedValue’)假设从dijit.form.Select中的选定选项中获取文本,但它似乎没有做太多? .attr(‘value’)得到了那些值,但是我需要TEXT?
您应该使用dijit.byId()来获取小部件实例.尝试使用此代码获取所选文本:dijit.byId('qualification').attr('displayedValue')