因此,我有一个if语句正在检查下拉列表的值。用户必须选择其中至少之一才能继续。这些值只是数字。我的if语句检查以确保基本上这些值等于零:

if (numChildren === 0 && numAdults === 0){
    Than do this
}


但是由于某种原因,它总是返回false。我已经在控制台上记录了numChildren和大人,以查看值是什么,并且它们是零。我不知道为什么它不起作用,我已经输入了“!”在它使它为真之前,但是它仍然为假。这是一个非常奇怪的错误。

$("#Discounts").on("click", function () {
        let numChildren = $("#children").val();
        let numAdults = $("#adults").val();
        console.log("Adults: " + numAdults + "\nChildren: " + numChildren);
        console.log(numChildren === 0 && numAdults === 0);
        if (numChildren === 0 && numAdults === 0) {
            alert("You must select");
            $("#children").val(1);
        }
    });

最佳答案

当在if语句中使用3 equals时,numChildren的类型和值必须与0(整数)相同,而不仅仅是等于0。

尝试更改为2等于:

if (numChildren == 0 && numAdults == 0) {
            alert("You must select");
            $("#children").val(1);
        }


Reference

09-20 09:14