以下是Select multiple和JS验证的问题:
<select name="service_ids[]" id="service_ids" size="7" multiple="">
<option value="">-- Please Select --</option>
<option value="1">S1</option>
.
.
.
</select>
问题在于,如果用户选择多个选项(包括第一个选项),则以下操作无效:
document.getElementById('service_ids').selectedIndex => 0
document.getElementById('service_ids').value => empty
答案 0 :(得分:0)
你可以像这样解决它
var services=document.getElementById('service_ids');
for(i=0;i<services.length;i++){
if(services.opstions[i].selected&&sevices.optins[i].value=''){
alert('This one should not be selected!');
break; // or return false
}
}
您可以在提交
之前将此代码放入验证输入的函数中<强>更新强>
如果您只关心不应该选择第一个选项,您可以像这样检查
if(document.getElementById('service_ids').options[0].selected){
alert('This should not be selected');
}
如果您没有收到提醒,您可以提交表格,并在服务器端获取选定的值