2014-04-22 34 views
11

是空的这里是有问题的下拉列表:检查是否选择下拉值使用jQuery

<select name="data" class="autotime" id="EventStartTimeMin"> 
    <option value=""></option> 
    <option value="00">00</option> 
    <option value="10">10</option> 
    <option value="20">20</option> 
    <option value="30">30</option> 
    <option value="40">40</option> 
    <option value="50">50</option> 
</select> 

我想要做的是检查当前值为空:

if ($("EventStartTimeMin").val() === "") { 
    // ... 
} 

但它确实不工作,即使值是空的。任何帮助深表感谢。

回答

25

你的id选择忘了#

if ($("#EventStartTimeMin").val() === "") { 
    // ... 
} 
+3

@RoryMcCrossan用于如果_EventStartTimeMin_其中一个asp.net控制的代码将是.NET:'如果($( “#<%= EventStartTimeMin.ClientID%>”)VAL()=== “” ){ // ... }' – Juanito

+2

@Juanito我知道,但这个问题与此有何关联? –

2

您需要通过id使用.change()事件以及使用#到目标元素:

$('#EventStartTimeMin').change(function() { 
    if($(this).val()===""){ 
     console.log('empty');  
    } 
}); 

Fiddle Demo

+0

刚刚使用更改的问题是,如果最后一个字段需要键盘输入,直到查看器点击某些内容才会发生变化,从而使它们变得混乱。改用.on('change,keyup',function(){})。 – WebDude0482

2

你也可以试试这个,

if(!$('#EventStartTimeMin').val()) { 
// do something 
} 
相关问题