Jquery If,Then - Multiple Variables

时间:2017-05-16 19:22:13

标签: 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");

$('#states').change(function () {
var w = +$('#states').val();
if (w = zonea) {
alert("Good!");
}
})

无论我选择什么状态,都会显示警报。

我不确定我在这里做错了什么。

2 个答案:

答案 0 :(得分:-1)

在第二种情况下

var w, zonea;
zonea = false;
if (w = zonea) {
    alert("Good!");
    }

您在if条件中将值zonea分配给w,除0false zonea之外,该条件将是为true,因此将执行警报

答案 1 :(得分:-1)

var zonea = ("NY", "NJ", "DE");
$('#states').change(function () {
var w = +$('#states').val();
if (w = zonea) {
alert("Good!");
}
});

这里你使用=表示赋值,并且总是在if语句中比较你必须使用的两个值==。 另外我看到var w中的+符号不需要并且可能导致代码错误,当你定义w时它将是string而zonea是数组所以尝试使用indexOf而不是w == zonea