Javascript 使用JS或jQuery检查所有输入值是否为零
我试图检查所有输入(Javascript 使用JS或jQuery检查所有输入值是否为零,javascript,jquery,Javascript,Jquery,我试图检查所有输入(.productTextInput)是否都为零 如果它们都为零,则仅当它们都为零时才执行警报 我已经能够单独检查第一个和全部,但不是全部一起检查 HTML 剧本 $('.productTextInput').each(function() { if ($(this).val() <= 1){ alert("Must choose at least one product"); } else { // do someth
.productTextInput
)是否都为零
如果它们都为零,则仅当它们都为零时才执行警报
我已经能够单独检查第一个和全部,但不是全部一起检查
HTML
剧本
$('.productTextInput').each(function() {
if ($(this).val() <= 1){
alert("Must choose at least one product");
} else {
// do something
}
});
$('.productTextInput')。每个(函数(){
if($(this).val()使用标志变量检查循环中的大小写
var flag = true;
$('.productTextInput').each(function() {
if ($(this).val() != 0){
flag = false;
return false
}
});
if(!flag){
alert('at least one is more than 0')
}
您可以为此使用:
if ($('.productTextInput').filter(function() {
return parseInt(this.value, 10) !== 0;
}).length === 0) {
// They all have zero
}
else {
// At least one has a non-zero value
}
$input\u val=true;
$('.productTextInput')。每个(函数(){
如果($.trim($(this).val())这一逻辑不正确,不是吗?请参阅我对Arun答案的评论(该答案实际上具有相同的代码)。是的,即使其中一个框是,它也会显示警报!0:Arun现在修复了他的问题,因此下面是我在上面提到的评论(我现在已删除该评论):“这种逻辑是不正确的,不是吗?你用flag=true表示它们都是0,但如果其中任何一个是@t.J.Crowder,你就把你的flag设置为false。是的,修复了这个问题problem@DarrenDavies:Yeah.:-)但是如果您更改.each
测试以使用this.value
而不是完全不必要的$(this.val())
,它几乎赶上了:(速度在这里并不重要)在有人再次发布之前:不,你不能使用$('.productTextInput[value=“0”]')
为此,它检查属性,而不是用户输入的内容:()输入一个非零值并单击按钮。
var valid = false;
$('.productTextInput').each(function() {
if (!valid && this.value == 1){
valid = true;
}
});
if(!valid){
alert("Must choose at least one product");
}
if ($('.productTextInput').filter(function() {
return parseInt(this.value, 10) !== 0;
}).length === 0) {
// They all have zero
}
else {
// At least one has a non-zero value
}
$input_val = true;
$('.productTextInput').each(function() {
if ($.trim($(this).val()) <= 1){
$input_val = false;
return false;
} else {
// do something
}
});
if(!$input_val){
alert("Must choose at least one product");
}
$('.productTextInput').each(function( index, value ) {
if (parseInt($(this).val())>0){alert("Must choose at least one product");}
});