javascript - jQuery Multiselect 插件返回空长度(应该是 0?)

标签 javascript jquery arrays null

使用 jQuery Multiselect 插件,需要检查是否有任何选择(用户可以打开和关闭选择框而不选择任何东西)。这个插件有一个“关闭”方法,我用它来获取选定/选中选项的数组:

var checkedVals = [];
checkedVals = $('#'+which).val();   // Get Array of checked options
alert(checkedVals.length);      // See if it's empty

当选择/选中一个选项时,它工作正常(所以我知道我正在返回值)但是当没有选择任何东西时,Firebug 会抛出一个错误,指出 checkedVals 为空。一个空数组应该是 0... 不为空。请...让我们不要讨论试图捕获“null”的问题。

感谢您的帮助

最佳答案

这样写,总会有一个数组

var checkedVals = $('#'+which).val() || [];
alert(checkedVals.length);      

它会将 checkedVals 设置为 .val() 值或空数组(如果它为 null(假))。

关于javascript - jQuery Multiselect 插件返回空长度(应该是 0?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12160391/

相关文章:

javascript - 理解下划线对 isNaN 的实现

javascript - Jquery Facebox 禁用按钮

jquery - 仅在鼠标悬停时显示图标

jquery - 为什么 .fadeIn ('slow' ) 在这里不起作用?

ruby-on-rails-3 - 轨道 3 : Ajax and the <%= escape_javaScript(item) %>

arrays - 如何使用 JSON 发送带有数组的字典?

arrays - 基于属性值的条件 Json 模式验证

javascript - Canvas 签名触摸在电话间隙中产生问题

Javascript对象和这个

arrays - 如何有效地搜索数组中的特定序列?