获取下拉列表框的值是数组,split,$.inArray示例

今天遇到一个贼蛋碎的问题:

1、我从 一个下拉列表select中单击事件,获取options的value值
复制代码 代码如下:

var product_id = $(this).val()

console.log出来是发现是个数组,如:["51"]

然后做了如下判断
复制代码 代码如下:

console.log(product_id);
if(product_id == '51'){alert(111);}
if(product_id[0] == '51'){alert(222);}

发现都可以弹出提示框,尼玛这不是坑我吗

2、我用这个 product_id 去匹配是否包含在一个数组中

错误代码:
复制代码 代码如下:

var result = $.inArray(product_id,arr_product_ids);

正确代码:
复制代码 代码如下:

var result = $.inArray(product_id[0],arr_product_ids);

$.inArray()必须用product_id[0],也就是说不能用数组

到今天才知道,下拉列表获取的value值是个数组,有了解的更深的大神,求解释。

你可能感兴趣的:(获取下拉列表框的值是数组,split,$.inArray示例)