我正在使用Html(JSP)和Javascript。我有一个ID为“examcenter”的下拉框,其中包含许多optgroup,如下面的代码所示。在javascript函数loadDrivingSchool()中,我想设置所选元素的值。 loadDrivingSchool()函数调用服务器中的控制器,当我返回视图时,下拉列表没有选定的值。我想将此选定值设置为用户在重新加载页面之前选择的值。我尝试了以下Javascript代码,但它无法正常工作:
document.getElementById('examcenter')。getElementsByTagName('option')[examCenter] .selected ='selected';
<select id="examcenter" onchange="loadDrivingSchool();">
<optgroup label="ADAMAOUA">
<option value="1">TIBATI</option>
<option value="2">TIGNERE</option>
<option value="3">MEIGANGA</option>
<option value="4">BANYO</option>
<option value="5">NGAOUNDERE</option>
</optgroup>
<optgroup label="CENTRE">
<option value="6">YAOUNDE</option>
<option value="7">ESEKA</option>
<option value="8">AKONOLINGA</option>
<option value="9">NANGA EBOKO</option>
<option value="10">MONATELE</option>
<option value="11">MBALMAYO</option>
<option value="12">MFOU</option>
<option value="13">NGOUMOU</option>
<option value="14">BAFIA</option>
<option value="15">NTUI</option>
</optgroup>
<optgroup label="EXTREME NORD">
<option value="20">MAROUA</option>
<option value="21">KAELE</option>
<option value="22">KOUSSERI</option>
<option value="23">MORA</option>
<option value="24">YAGOUA</option>
<option value="25">MOKOLO</option>
</optgroup>
<optgroup label="EST">
<option value="16">YOKADOUMA</option>
<option value="17">ABONG-MBANG</option>
<option value="18">BATOURI</option>
<option value="19">BERTOUA</option>
<option value="62">NGUELEMENDOUKA</option>
</optgroup>
</select>
答案 0 :(得分:0)
我认为您要做的是跟踪用户选择的内容,而不提交选定的选项。只有在以某种方式保留记录时才能实现这一点,可能使用会话属性。
您可以在会话中存储所选选项的值,然后使用AJAX获取它的值。
但是,如果我错了,并且您只是想在不离开该页面的情况下获取所选选项的值,那么您可以尝试使用此选项在下拉列表中显示所选选项的值:
alert( document.getElementById("examcenter").value );
另外,我发现代码中存在问题。您正在使用
document.getElementById('examcenter').getElementsByTagName('option')[examCenter].selected = 'selected' ;
相反,你应该使用:
document.getElementsByTagName('option').selected = true ;