0

在我的验证中,必填字段可以更改。我有一个必需的输入 ID 数组(必需)。如果数组包含字符串“All”,则需要所有输入。

我正在尝试使用 JQuery.inArray() 来确定是否需要。

function getIfRequired(id){
    console.log("id: "+id);
    console.log(required);
    console.log("inarray: "+jQuery.inArray(required, 'All'));

    if (jQuery.inArray(required, 'All') > -1){ return true; }
    else if(jQuery.inArray(required, id) != -1){ return true; }
    else{ return false; }
}

但它一直返回“-1”(未找到)。

以下是示例日志输出:

id: clientname
["clientname", "sourceid", "clientcountry","clienttown", "clienttownid", "typeoflaw"] 
inarray: -1 

id: clientname
["All"] 
inarray: -1 

为什么它不起作用?

4

3 回答 3

11

你有你的值和数组参数转置,例如:

jQuery.inArray('All', required);
于 2013-09-20T11:05:09.093 回答
1

你叫错了jQuery.inArray。首先是值,然后是数组

http://api.jquery.com/jQuery.inArray/

jQuery.inArray('All', required);

代替

jQuery.inArray(required, 'All');
于 2013-09-20T11:09:52.333 回答
0

因为required没有找到All

你会写如下

 console.log("inarray: "+jQuery.inArray('All', required));

参考

于 2013-09-20T11:05:13.337 回答