可能重复:
Check if option is selected with jQuery, if not select a default
我有这样的HTML:
<div id="somedivid">
<select class="someclass">
<!-- options -->
</select>
<select class="someclass">
<!-- options -->
</select>
</div>
如何检查两个选择框中是否选择了选项?
编辑:我无法更改html,所以这意味着我无法为选择元素添加ID。答案 0 :(得分:3)
选择总是有选择。
但是假设你选择了这样一个空的选择:
<select id=select1>
<option></option>
<option>A</option>
<option>B</option>
</select>
您可以测试一下:
if ($('#select1').val() && $('#select2').val()) {
// both have selection
编辑:如果您没有ID或名称,可以使用:
var allSelected = true:
$('#somedivid select').each(function() {
if (!$(this).val()) {
allSelected = false;
break;
}
});
答案 1 :(得分:0)
<script type="text/javascript">
$( function() {
$( '#somedivid > select' ).bind( 'change', function(){
if( $( '#sel1').attr( 'value' ) != 'default' && $( '#sel1' ).attr( 'value' ) != 'default' ){
//do something here.
}
});
} );
</script>
<div id="somedivid">
<select id="sel1">
<option value="default" selected="selected"></option>
<!-- options -->
</select>
<select id="sel2">
<option value="default" selected="selected"></option>
<!-- options -->
</select>
</div>
答案 2 :(得分:0)
考虑到两个选择框都有一些默认选项值=“无”
var isBothSelected=0;
if($('#selectbox1 option:selected').val() =='none'){
alert('Plase select the select1');
isBothSelected=isBothSelected+1;
//return false;
}
if($('#selectbox2 option:selected').val() =='none'){
alert('Plase select the select2');
isBothSelected=isBothSelected+1;
// return false;
}
if(isBothSelected ==2){
alert('Both are not selected')
}
答案 3 :(得分:0)
试试这个
var val= $("#selectid option:selected").value();
if(val==="")
{
alert("your code on not selected condition");
}