2015-07-21 137 views
0

元素我有这样的jQuery代码:在本

if ($form.find('.required').filter(function(){ return this.value === '' }).length > 0) { 

} 

if语句,如何才能得到每个元素添加一个类呢?

我试图$(this).addClass("EmptySelect");但它只是增加了类的形式本身,而不是元素

回答

1

filter()呼叫

var emptyElements = $form.find('.required').filter(function() { 
     return this.value === '' 
    }); 
    if (emptyElements.length > 0) { 
     emptyElements.addClass("EmptySelect"); 
    } 

但是之后执行addClass,你可以只用addClass连接filter声明因为过滤器只会返回空元素

$form.find('.required').filter(function() { 
      return this.value === '' 
     }).addClass("EmptySelect"); 
+0

我在哪里添加此代码?它看起来像我的一些代码已被删除? – charlie

+0

@charlie,看到我更新的答案。但是如果你仔细想想,你可以直接将'filter'语句与'addClass'连接起来,而不用'if',因为过滤器只会返回空元素 – AmmarCSE

+0

我刚刚尝试过'alert(emptyElements);'但是它显示的是[[object对象]而不是元素名称/编号 – charlie