jquery - Jquery 中的 if/else else if 条件

标签 jquery jquery-selectors

我有一组文本字段,我正在其中进行验证 假设我有一个可以接受的名为“席位”的字段 值小于“99999”。这意味着我应该无法输入 “99999” 任何低于这个数字都可以。为此,我在下面写了 if 和 else if 。 请告诉我我是否做错了什么。从早上开始我就很困惑 是否应该小于或大于

if ($("#seats").val() != '') {
    setflag = false;
    alert("Not a valid character")
}
else if($("#seats").val() < 99999) {
    alert("Not a valid Number");
} else {
    setflag = true;
}

最佳答案

Iam confused a lot from morning whether it should be less than or greater than`

this can accept value less than "99999"

我想你自己回答了......但是当它小于时它是有效。因此以下说法是错误的:

}elseif($("#seats").val() < 99999){
  alert("Not a valid Number");
}else{

您的意思是,如果小于 99999,则它无效。您想做相反的事情:

}elseif($("#seats").val() >= 99999){
  alert("Not a valid Number");
}else{

此外,由于您有 $("#seats") 两次,jQuery 必须搜索 DOM 两次。您确实应该将值或至少 DOM 元素存储在变量中。而且您的更多代码没有多大意义,因此我将做出一些假设并将其放在一起:

var seats = $("#seats").val();

var error = null;

if (seats == "") {
    error = "Number is required";
} else {
    var seatsNum = parseInt(seats);
    
    if (isNaN(seatsNum)) {
        error = "Not a valid number";
    } else if (seatsNum >= 99999) {
        error = "Number must be less than 99999";
    }
}

if (error != null) {
    alert(error);
} else {
    alert("Valid number");
}

// If you really need setflag:
var setflag = error != null;

这是一个工作示例:http://jsfiddle.net/LUY8q/

关于jquery - Jquery 中的 if/else else if 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4520042/

相关文章:

javascript - 交替点击时的 setTimeout 和clearTimeout

jquery - 在具有相同类且是直接兄弟的两个 DIV 之间插入新 DIV

javascript - 如何创建一系列 div 并使它们可供 jquery 访问以在一段时间后修改它们?

javascript - 使用 jQuery/Javascript 的 For 循环

javascript - 如何在段落中找到一个不强的元素

javascript - jQuery 幻灯片,转到上一张图片

javascript - 我如何在 jQuery 插件中返回一个子集?

jquery ajax调用多个按钮点击事件

javascript - 多个选择框 jquery 和后序列化

javascript - $(window).load 和 $(document).ready 有什么区别?