Som*_*one 7 jquery jquery-selectors
我有一组文本字段,我正在进行验证说我有一个名为"座位"的字段,这可以接受小于"99999"的值.意思是我不应该输入"99999"任何比这更少的东西是好.为此我在下面写了if 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;
}
Run Code Online (Sandbox Code Playgroud)
Nel*_*mel 15
我早上很困惑,是否应该小于或大于`
这可以接受小于 "99999"的值
我想你自己回答了......但是当它低于它时它是有效的.因此以下是不正确的:
}elseif($("#seats").val() < 99999){
alert("Not a valid Number");
}else{
Run Code Online (Sandbox Code Playgroud)
你说如果它小于 99999,那么它无效.你想做相反的事情:
}elseif($("#seats").val() >= 99999){
alert("Not a valid Number");
}else{
Run Code Online (Sandbox Code Playgroud)
此外,由于你有$("#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;
Run Code Online (Sandbox Code Playgroud)
这是一个工作样本:http://jsfiddle.net/LUY8q/