javascript - JS 检查 Jquery inArray

标签 javascript jquery arrays

我想在 select 元素上使用 onchange 状态来检查 select 的值是否在数组中。

我尝试过这个:

function statutEmployeur(){
   statliste = [];
   statliste.push(1);
   statliste.push(2);
   statliste.push(5);
   statid = jQuery("#statut").val();
   if(jQuery.inArray(statid,statliste)>-1){
      alert('inside array');
   }else {
      alert('outside array');
   }
}

我尝试的每个值都在数组之外。 有人可以帮助我吗?

谢谢

最佳答案

正如 Stryner 所指出的在注释中,尝试通过 parseInt() 运行 .val() 以确保您保存的是数值(而不是字符串)

   statid = jQuery("#statut").val();

至:

   statid = parseInt(jQuery("#statut").val(), 10);

工作 fiddle :http://jsbin.com/maqesupuka/edit?html,js,console,output

问题是您在数组中搜索字符串类型(输入的默认类型),但您的数组仅包含数字。您可以将数组转换为数字,或者进行如上所述的类型转换,以确保您使用相同的类型。

关于javascript - JS 检查 Jquery inArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33761649/

相关文章:

javascript - 如何将这些值操作为相关的列 id?

javascript - Vue 组件未在状态更改时更新

jquery - 单击子菜单后汉堡菜单不起作用

javascript - 如何阻止 html 中元素的掉落?

将数组元素复制到新元素 - C

javascript - 多次插入到一个大字符串中

javascript - Vue JS 中各个元素的切换类

php - 表单提交 - 防止页面重新加载 jQuery

java - 在 Java 中深度克隆多维数组......?

c - K&R 1.6 Arrays//数组构造中的数字表示