我有一个具有多个条件的函数,但由于某种原因,它会卡在第一个if
语句中。有谁知道为什么会发生这种情况?
var k
总是返回正确的,但无论我选择哪个选项,第一个if
语句都是唯一运行的语句,尽管值k
。
jQuery / JS如下:
<script>
$(function () {
var a = $("#BreedingSireUnReg"),
b = $("#BreedingDamUnreg"),
c = $("#BreedingDateUnreg");
$("#BreedingOptionsUnReg").change(function () {
var k = parseInt($("#BreedingOptionsUnReg").val());
console.log(k);
if (k == 2||8) {
$(a, b, c).prop("disabled", true);
console.log("1");
}
else if (k == 3||4||5||9||10||11) {
$(a, b).prop("disabled", true);
$(c).prop("disabled", false);
console.log("2");
}
else {
$(a, b, c).prop("disabled", false);
console.log("3");
}
});
});
</script>
答案 0 :(得分:6)
因为8
永远是真的。我相信你打算输入if (k == 2 || k == 8)
。你总是必须指明你要检查的内容。
答案 1 :(得分:1)
更改if
声明不正确,这是if
阻止它始终进入的原因:
if (k == 2|| k ==8)