Jquery If,Then-多个变量

Jquery If,Then-多个变量,jquery,arrays,if-statement,Jquery,Arrays,If Statement,遇到多个变量和jquery if/then的障碍 我想做的是,当用户选择一个特定的状态时,计算就完成了 这是我迄今为止所做的,但它不起作用: var zonea = ("NY", "NJ", "DE"); $('#states').change(function () { var w = +$('#states').val(); if (w == zonea) { alert("Good!"); } }) 如果我将代码更改为: var zonea = ("NY", "NJ", "DE");

遇到多个变量和jquery if/then的障碍

我想做的是,当用户选择一个特定的状态时,计算就完成了

这是我迄今为止所做的,但它不起作用:

var zonea = ("NY", "NJ", "DE");

$('#states').change(function () {
var w = +$('#states').val();
if (w == zonea) {
alert("Good!");
}
})
如果我将代码更改为:

var zonea = ("NY", "NJ", "DE");

$('#states').change(function () {
var w = +$('#states').val();
if (w = zonea) {
alert("Good!");
}
})
无论我选择什么状态,都会显示警报

我不确定我做错了什么。

在第二种情况下

var w,区域a;
zonea=假;
if(w=分区){
警惕(“好!”);
}
这里使用=表示赋值,在if语句中比较必须使用==的两个值总是正确的。
此外,我还发现不需要在var w中使用+符号,这可能会导致代码错误,当您定义w时,它将是字符串,而zonea是数组,因此尝试使用indexOf而不是w==zonea

是否可能重复?此外,
var zonea=(“NY”、“NJ”、“DE”)没有什么意义。它相当于
var zonea=“DE”我试图做的是将多个状态分配给var zonea。因此,如果用户选择3种状态中的任何一种,就会出现警报。if(w=zonea){…应该是if(w==zonea){一个变量只能包含一个值。也许您的意思是它包含一个具有多个值的数组?
var zonea = ("NY", "NJ", "DE");
$('#states').change(function () {
var w = +$('#states').val();
if (w = zonea) {
alert("Good!");
}
});