2015-01-10 13 views
0

我想验证我的tabout.The下拉列表下拉列表中所示验证了

<div class="form-group"> 
      <label class="col-sm-2 control-label labelfont">Select a Provider Type:</label> 
      <div class="col-sm-10" id="ProviderType"> 
       <select class="form-control"> 
        <option>Select a Provider Type</option> 
        <option>Doctor</option> 
        <option>Facility</option> 
       </select> 
      </div> 
     </div> 

我写了下面的代码,以获得标签了

$("#ProviderType").on("blur", function() { 
    if ($("this")[0].selectedindex <= 0) 
     alert("Please choose a Provider"); 
}); 
警报选项卡上的一个下拉列表

上面的代码没有工作,

所以,我想这个代码不工作,要么

$("#ProviderType option:selected").on("blur", function() { 
    if ($("this").text() == "Select a Provider Type") 
     alert("Please choose a Provider"); 
}); 

任何帮助,将不胜感激guys.Thanks提前。

建议我使用.bind()方法做了一些事件处理。

$("#Certification").bind("blur",function() { 
    alert("Event binding is working fine.") 
}); 

我看到一个警报,当Tabdown出Dropdownlist.I仍然没有看到错误虽然。请指导我。

+0

它怎么不起作用?你在控制台上发现任何错误吗? –

+0

没有..没有错误。我有一个警告与淘汰赛有关。 –

+0

代码运行时,元素是否存在?尝试委托事件 – charlietfl

回答

1

溶液1 - 设置空值到第一选项

一个解决方案可以是一个空的值设置为第一个选项,然后检查选择的值

$("#Certification").bind("blur",function() { 
    var selected_value = $(this).val(); 
    if(selected_value==null || selected_value=='') { 
     alert("Please choose a Provider"); 
    } 
}); 

Fiddle

这可以用于在元素失去焦点后检查值。然而,这种解决方案可能会让用户烦恼,因为他们可能想要回来并做出新的选择。所以,你可以评估第二个解决方案。

解决方案2 - 隐藏第一个选项

另一种解决方案可能是隐藏从列表中的第一个选项,使用户不能选择它,然后检查选择的值毕竟,即在表单提交。

$("#myform").submit(function() { 
    var selected_value = $("#Certification").val(); 
    if(selected_value==null || selected_value=='') { 
     alert("Please choose a Provider"); 
     return false; 
    } 
    return false; // remove this line in real form submission 
}); 

Fiddle

+0

非常感谢,现在工作 –