2015-07-21 60 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