$(select).val()。null的长度给出错误

时间:2016-06-17 13:17:37

标签: jquery bootstrap-select

我的表单中有一个select对象,使用Bootstrap-select.js插件设置样式。当我初始化选择框,并尝试获取它的值时,它是null,直到我选择一个选项。在我的脚本中,我正在使用: -

$(select).val().length

但是,如果$(select).val()null,则会出错。我真的想得到0

我该怎么做?

3 个答案:

答案 0 :(得分:5)

尝试: -

($(select).val() || '').length
  

Logical Operators

     

逻辑运算符通常与布尔(逻辑)值一起使用。   如果是,则返回布尔值。然而,&&和||   运算符实际上返回一个指定操作数的值,   因此,如果这些运算符与非布尔值一起使用,它们可能会   返回非布尔值。

     

可转换为false的表达式示例如下:

     
      
  •   
  • 的NaN
  •   
  • 0
  •   
  • 空字符串(“”)
  •   
  • 的NaN
  •   
  • 未定义
  •   

<强>演示

var length = ($('select').val() || '').length;

console.log('length: ' + length);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<select>

<select>

答案 1 :(得分:1)

使用此功能。

var $selectElement = $("#mySelect");
var len = $selectElement.val() != null ? $selectElement.val().length : 0;
console.log(len);

答案 2 :(得分:0)

试试这个

function get_length( select ){
 if ( $(select).val() != null ) {
  return $(select).val().length;
 }else{
  return 0;
 }
}

console.log( get_length(my_select_box_variable) );