gpt4 book ai didi

jquery - JS jQuery - 检查值是否在数组中

转载 作者:行者123 更新时间:2023-12-03 21:43:15 25 4
gpt4 key购买 nike

我更喜欢 PHP,而不是 JS - 我认为我的问题更多是语法问题..

我有一个小的 jQuery 来“验证”并检查输入值。

它适用于单个单词,但我需要数组。

我正在使用 inArray() jQuery 的。

var ar = ["value1", "value2", "value3", "value4"]; // ETC...

jQuery(document).ready(function() {

jQuery("form#searchreport").submit(function() {
if (jQuery.inArray(jQuery("input:first"), ar)){
//if (jQuery("input:first").val() == "value11") { // works for single words
jQuery("#divResult").html("<span>VALUE FOUND</span>").show();
jQuery("#contentresults").delay(800).show("slow");
return false;
}

// SINGLE VALUE SPECIAL CASE / Value not allowed
if (jQuery("input:first").val() == "word10") {

jQuery("#divResult").html("YOU CHEAT !").show();
jQuery("#contentresults").delay(800).show("slow");

return false;
}

// Value not Valid

jQuery("#divResult").text("Not valid!").show().fadeOut(1000);

return false;
});

});

现在-这个if (jQuery.inArray(jQuery("input:first"), ar))工作不正常..我输入的每个值都将被验证为 OK 。 (即使是空的)

我只需要验证数组 (ar) 中的值。

我也尝试过if (jQuery.inArray(jQuery("input:first"), ar) == 1) // 1,0,-1 tried all

我做错了什么?

额外问题:如何在 jQuery 中不在数组中?(相当于 PHP if (!in_array('1', $a)) - 我发现它不起作用,需要使用这样的东西:!!~

最佳答案

您正在将 jQuery 对象 (jQuery('input:first')) 与字符串(数组的元素)进行比较。
更改代码以便将输入值(这是一个字符串)与数组元素进行比较:

if (jQuery.inArray(jQuery("input:first").val(), ar) != -1)

如果在数组中找不到该元素,inArray 方法将返回 -1,因此您的奖励回答了如何确定如果某个元素不在数组中,请使用:

if(jQuery.inArray(el,arr) == -1){
// the element is not in the array
};

关于jquery - JS jQuery - 检查值是否在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11491405/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com