Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 多个数字输入,jquery。如果val()大于,则向元素添加类_Javascript_Jquery_Input_Each - Fatal编程技术网

Javascript 多个数字输入,jquery。如果val()大于,则向元素添加类

Javascript 多个数字输入,jquery。如果val()大于,则向元素添加类,javascript,jquery,input,each,Javascript,Jquery,Input,Each,我需要遍历某个类名的输入元素列表。并且基于类为“attendeeQuantityInput”的任何输入的值是否大于0,然后向页面上的元素添加一个类,如果类为“attendeeQuantityInput”的任何输入,则从元素中删除该类。 我正在使用jQuery。我尝试了一个.each(),但由于某些原因,我无法获取输入的值,请检查它,然后向元素添加一个类 这就是我迄今为止所尝试的: JS HTML 成员与会者 成人会员 19-64岁 - + 小会员 11-18岁 - + 成员子女 3

我需要遍历某个类名的输入元素列表。并且基于类为“attendeeQuantityInput”的任何输入的值是否大于0,然后向页面上的元素添加一个类,如果类为“attendeeQuantityInput”的任何输入,则从元素中删除该类。
我正在使用jQuery。我尝试了一个.each(),但由于某些原因,我无法获取输入的值,请检查它,然后向元素添加一个类

这就是我迄今为止所尝试的:

JS

HTML


成员与会者
  • 成人会员 19-64岁 - +
  • 小会员 11-18岁 - +
  • 成员子女 3-10岁 - +
  • 幼儿会员 0-3岁 - +

我不知道带有
…each()
的行-使用控制台查看是否可以使用选择器选择任何内容

但是还有一条线会给你带来麻烦

 $(this).val() == 0 || $(this).val() == null
那么
$(this.val()=''
$(this.val()==未定义的

你可以考虑使用< /P>

 if (parseInt($(this).val()) && parseInt($(this).val()) > 0 ) { ... } else {...}
另外,逻辑也有点奇怪,因为即使在找到一个应该启用或禁用的输入之后,您仍会继续迭代输入


我首先禁用按钮,然后对每个按钮进行迭代,如果发现一个按钮的值大于0,则“启用”

我不知道为什么会这样,但这是我自己找到的答案。 这只是我的循环所需要的函数。我只是张贴的功能,因为这是什么是需要的

希望它能帮助其他人

 function memberZeroAttendees() {

    var validate= false;
    $('#MemberTotalAttendeesPage input').each(function(){
        if($(this).val() >= 1)
            validate = true;
    });
    if(!validate){
        $('#MemberTotalAttendeesPage .continueBtn').addClass('disabled');
        //return false;
    }
    else { 
        $('#MemberTotalAttendeesPage .continueBtn').removeClass('disabled');
    }
}

您发布的HTML标记中没有
#MemberTotalAttendeesPage
。如果这是一个父元素,那么发布相关的HTML标记,而不仅仅是其中的一部分。是否有ID为
MemberTotalAttendeesPage
的元素?在您发布的示例中,您不知道。您的函数也缺少一个结束符
}
。如果你解决了这个问题(虽然逻辑看起来有点缺陷),那么你作为一名程序员,最好的投资就是学习调试——从学习如何使用开发工具或Firebug开始。首先要做的两件事是:1)控制台-在这里可以键入
$(“#MemberTotalAttendeesPage input[name=memAttendees]”)
之类的内容,并查看是否找到了任何元素。这样,您可以查看选择器是否正确。事实并非如此。此外,您还可以尝试任何您不确定的javascript代码。2) “源”选项卡允许您查看代码并放置断点。现在,您可以逐行执行任何代码,并检查范围内的变量more@A.Wolff我很抱歉,j08691认为这可能是一个给定的。我为相关标记添加了包装元素,因为没有id=MemberTotalAttendeesPage的元素很难理解您做错了什么?
 if (parseInt($(this).val()) && parseInt($(this).val()) > 0 ) { ... } else {...}
 function memberZeroAttendees() {

    var validate= false;
    $('#MemberTotalAttendeesPage input').each(function(){
        if($(this).val() >= 1)
            validate = true;
    });
    if(!validate){
        $('#MemberTotalAttendeesPage .continueBtn').addClass('disabled');
        //return false;
    }
    else { 
        $('#MemberTotalAttendeesPage .continueBtn').removeClass('disabled');
    }
}