我的表单中有一个select对象,使用Bootstrap-select.js插件设置样式。当我初始化选择框,并尝试获取它的值时,它是null
,直到我选择一个选项。在我的脚本中,我正在使用: -
$(select).val().length
但是,如果$(select).val()
为null
,则会出错。我真的想得到0
。
我该怎么做?
答案 0 :(得分:5)
尝试: -
($(select).val() || '').length
逻辑运算符通常与布尔(逻辑)值一起使用。 如果是,则返回布尔值。然而,&&和|| 运算符实际上返回一个指定操作数的值, 因此,如果这些运算符与非布尔值一起使用,它们可能会 返回非布尔值。
可转换为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) );