选择所需'选择框'空值

时间:2014-10-29 15:39:38

标签: javascript jquery

我尝试使用以下代码,但没有成功:
jQuery的:

if($('select[required][value=""]').length>0){
    alert('w0t m8');   
}

HTML

<select required="required">
    <option></option>
    <option>1</option>
    <option>2</option>
</select>

的jsfiddle:
http://jsfiddle.net/xemucr7q/

3 个答案:

答案 0 :(得分:1)

以下代码适用于给定的html

$('select[required]').on('change', function() {
    if(!$(this).val()){
        alert('w0t m8');   
    }
});

答案 1 :(得分:1)

如果您在页面上有多个选择,那么:

$('select[required]').each(function(){
    if(!$(this).val()){
        alert('what');
    }
});

如果您想查看更改:

$('select[required]').on('change', function(){
     if(!$(this).val()){
         alert('what');
     }
});

问题:你知道为什么$('select [required] [value =“”]')。长度不会返回空的所需选择的长度吗?

回答:请尝试以下

alert($("select[required]").find(":selected").not('[value]').length)

或许这更适合:

alert($("select[required]").find(":selected[value='']").length)

DEMO

答案 2 :(得分:0)

您还没有关闭if statement.use:

if($('select[required][value=""]').length){
   alert('w0t m8');   
}

<强> Working Demo

使其适用于下拉列表更改事件:

$('select[required]').change(function(){
if($('select[required][value=""]').length){
  alert('w0t m8');   
}}).change();