JQuery:addClass不处理具有多个类的元素.为什么?我很困惑!

Mat*_*att 1 jquery addclass element class

这非常令人沮丧.这是为表单编写的一些代码的一部分.与验证错误关联的输入元素应显示红色边框.它适用于.css方法,但如果有人能告诉我为什么.addClass方法不起作用,我将不胜感激.

<style type="text/css">
    .field_error{color:red;}
    .red_border{border:1px solid red;}
</style>

<script>
    $(document).ready(function(){
        $('.field_error').siblings().addClass('red_border');
    });
</script>
...
<label class="description" for="element_1">Email Address </label>
            <div>
            <input id="element_1" name="email" class="element text medium" type="text"/> 
                {% if form.email.errors %}
                    <div class="field_error">{{form.email.errors}}</div>

                {% endif %}
                     </div>

                      ..etc..
Run Code Online (Sandbox Code Playgroud)

如果只为一个类分配"element_1",它就可以正常工作.

我也可以这样做:

$('.field_error').siblings().css("border", "1px solid red"); 
Run Code Online (Sandbox Code Playgroud)

但是,我计划在我要添加的类中添加大量内容. 有没有办法让addClass方法工作?

谢谢!!

马特

重要编辑

我忘了在我的代码中添加多个类.难怪有些人感到困惑.请再次查看代码.

<input id="element_1" name="email" class="element text medium" type="text"/> 
Run Code Online (Sandbox Code Playgroud)

解决了

问题是我有css文件已经定义了文本输入元素的边框.现在修复了.感谢大脑和我一起存储的所有人.

JAA*_*lde 5

适用于我:http://jsfiddle.net/JAAulde/KPckC/1/(更新了您的多级校正)

但是,您的代码中确实存在拼写错误:

<input id="element_1" name="email" class="element type="text"/>
Run Code Online (Sandbox Code Playgroud)

应该

<input id="element_1" name="email" class="element" type="text"/>
Run Code Online (Sandbox Code Playgroud)

也许这存在于您的实时网站中?