Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何同时在数组中搜索两个值?_Jquery_Arrays_Jquery Select2_Dropdown - Fatal编程技术网

Jquery 如何同时在数组中搜索两个值?

Jquery 如何同时在数组中搜索两个值?,jquery,arrays,jquery-select2,dropdown,Jquery,Arrays,Jquery Select2,Dropdown,我的页面上有一个select2下拉列表,其中填充了数据库中一个表中的国家。用户可以选择多个国家,形成一个阵列。我想在数组中搜索两个值。例如: var selvalues = $(this).val(); //["AS", "US", "CA"] 在dropwdown的change事件中,如果“US”是其中一个值,并且数组还包含一个不是“US”的值,则抛出一个错误 到目前为止,我在jQuery中已经尝试了一些东西: $('#countriesSelect').on('change', f

我的页面上有一个select2下拉列表,其中填充了数据库中一个表中的国家。用户可以选择多个国家,形成一个阵列。我想在数组中搜索两个值。例如:

    var selvalues = $(this).val(); //["AS", "US", "CA"]
在dropwdown的change事件中,如果“US”是其中一个值,并且数组还包含一个不是“US”的值,则抛出一个错误

到目前为止,我在jQuery中已经尝试了一些东西:

$('#countriesSelect').on('change', function(){

    var selvalues = $(this).val(); 

   console.log(selvalues .some(x => x !== 'US' && x == 'US'));

   if(selvalues.includes('US') || !selvalues.includes('US')){
        console.log('You cannot choose a foreign country when current selection is US');  
    }
   if($.inArray("US",selvalues) != -1){
        $('#usregions').show().fadeIn();
        if($.inArray("US",selvalues) != -1){}
    } else {
        $('#usregions').hide().fadeOut();
    }
    $.each(selvalues, function( index, value ) {
        console.log()
        if(value == 'US' && value != 'US'){
            console.log('You cannot choose a foreign country when current selection is US');   
        } 
    });
});

我希望它根据上述标准抛出一个错误。

处理逻辑。如果您选择了
US
和其他内容,则为错误。这意味着您至少有两个选择,其中一个是
US
。所以你不在乎其他人是什么,只要有多个,其中一个是
我们

if (selvalues.length > 1 && selvalues.includes('US')) { ...problem... }

按照逻辑办事。如果您选择了
US
和其他内容,则为错误。这意味着您至少有两个选择,其中一个是
US
。所以你不在乎其他人是什么,只要有多个,其中一个是
我们

if (selvalues.length > 1 && selvalues.includes('US')) { ...problem... }

对。啊,当我离得这么近的时候,我很痛苦。只是提醒我,当我面对逻辑问题时,我必须试着放慢速度。啊,当我离得这么近的时候,我很痛苦。只是提醒我,当遇到逻辑问题时,我必须试着放慢速度。