Javascript jquery添加了太多的类

Javascript jquery添加了太多的类,javascript,jquery,Javascript,Jquery,编辑:很抱歉,我没有给你完整的信息。我不小心漏掉了什么(我不得不匆忙地问这个问题): 每个输入元素都有一个同级img标记。它们一起工作,看起来就像一个select元素。我的问题是,在验证之后,只有input标记得到class.Error,这给了它一个红色边框(因此img标记没有边框)。我之所以要将父元素作为div的目标,是因为目前只有input元素获得了.error类,但是如果父div获得了该类,那么input+img集看起来就像一个元素 要比问题快-我不能将输入+img组合更改为选择标记 我对

编辑:很抱歉,我没有给你完整的信息。我不小心漏掉了什么(我不得不匆忙地问这个问题):

每个输入元素都有一个同级img标记。它们一起工作,看起来就像一个select元素。我的问题是,在验证之后,只有input标记得到class.Error,这给了它一个红色边框(因此img标记没有边框)。我之所以要将父元素作为div的目标,是因为目前只有input元素获得了.error类,但是如果父div获得了该类,那么input+img集看起来就像一个元素

要比问题快-我不能将输入+img组合更改为选择标记

我对一个简单的jQuery脚本有一个问题。 它应该如何工作:检查特定类的输入。如果输入得到类。错误,那么如果其父类有class.trigger包装器,则给出父类。也错误。如果父级没有.trigger包装器类,则不要使用它

脚本不关心“if input has.error class”部分,并将class.error提供给所有父级,无论目标输入是否具有.error class。此外,它还将该类添加到没有.trigger包装器类的父类中

剧本:

jQuery(document).ready(function(){
setInterval(function(){
    var requiredInput = jQuery('input.form-text');
    if( requiredInput.hasClass('wrong') ) {
        requiredInput.parent('.trigger-wrapper').addClass('wrong');
    }
    else {
        requiredInput.parent().removeClass('wrong');
    }
}, 100);

}))

所需输入将是一组结果。因此,您需要使用来循环它们。

尝试使用“最近者”而不是“父对象”

            jQuery(document).ready(function () {
            setInterval(function () {
                var requiredInput = $('input.form-text');
                var closest = requiredInput.closest('.trigger-wrapper');
                if (requiredInput.hasClass('wrong')) {
                    closest.addClass('wrong');
                } else {
                    closest.removeClass('wrong');
                }
            }, 100);
        })

@是的,是的@RoryMcCrossan向我展示了我在不验证自己的情况下相信别人评论的结果:)谢谢。我假设像我那样针对每个输入元素与对它们使用.each()方法是一样的,但显然不是。没有解决核心问题,即他没有反复查看结果。我只能假设是你在一年多前(!)否决了我的一个问题。你真是太好了。