为什么其他如果声明工作?

时间:2015-11-29 18:38:24

标签: javascript jquery html

的JavaScript

function AdultNumber(){              /* Ticket Number Validation   */  
    var AdInput = $("#adult").val();

    if (AdInput > 0 ){
        document.getElementById("AdTickError").textContent = "";
        return true;

    } else if( AdInput > 20) {
        confirm("You sure you want 20+ Passengers?");
        return true;
    } else {
        document.getElementById("AdTickError").textContent = "Incorrect Enter Correct Number Of Passengers";
        return false;
    }
}

HTML:

<label for="Adult-ticket" class="center-label">Adults(+16)</label>
    <input type="number" id="adult" name="user_adult">
<label id = "AdTickError"></label>

如果用户输入超过20,为什么不显示确认框?我希望如果用户选择20或以上的确认框提示询问用户是否要继续。

2 个答案:

答案 0 :(得分:5)

您可能想要更改此条件:

if (AdInput > 0 )

到此:

if (AdInput > 0 && AdInput <= 20){

答案 1 :(得分:1)

从DOM元素检索的值始终被视为字符串。你需要说:

var AdInput = parseFloat($("#adult").val());

或者,根据您的需要,您可能希望使用parseInt()代替parseFloat()来获取整数而不是浮点数。