2017-04-07 32 views
0

我需要檢查兩件事是否屬實才能決定類。我一直在試圖找到一個解決方案,因爲我相信這應該是一個相當普遍的問題。也許我只是在尋找錯誤的東西。在語句中的ng級多重條件

我想在一個語句中有兩個條件,如果這就是它的名字?

我已經試過類似的事情這樣:

ng-class="{'in-behalf-of-background-color' : parameters.Username == quote.InBehalfOf } ,{'not-in-behalf-of-background-color' : ((parameters.Username != quote.InBehalfOf) && (quote.InBehalfOf != 'null'))}" 

正如你可以看到我想要檢查parameters.Username = quote.InBehalfOf並且如果quote.InBehalfOf = NULL在同等條件下!。這可能嗎?

+0

應該工作,對不對? – pranavjindal999

+0

是的,我認爲如此,但它不:( –

+0

以及很好的將這樣的邏輯移動到控制器作爲視圖邏輯很難調試。使一個變量或函數獲得布爾應用該類 – pranavjindal999

回答

3

試試這段代碼;

需要多個條件,然後定義一個對象,並在ng-class與鍵值對{key1:value1, key2: value2}

ng-class="{'in-behalf-of-background-color' : parameters.Username == quote.InBehalfOf, 'not-in-behalf-of-background-color' : ((parameters.Username != quote.InBehalfOf) && (quote.InBehalfOf)) }" 
+0

這使得所有他們得到的類:not-in-representative-of-background-color –

+0

也許,你用錯了最後一個條件試試這個代碼'((parameters.Username!= quote.InBehalfOf)&&(quote.InBehalfOf))''而不是' ((parameters.Username!= quote.InBehalfOf)&&(quote.InBehalfOf!='null'))' –

+0

是的,工作!:)謝謝! –

1

你缺少的東西是確定的條件下,多類,您不需要創建另一個{..}。你可以指定多個,只需用逗號分隔即可。,。因此,下面應該工作,

ng-class="{'in-behalf-of-background-color' : parameters.Username == quote.InBehalfOf, 
    'not-in-behalf-of-background-color' : (parameters.Username != quote.InBehalfOf) && (quote.InBehalfOf != 'null')}" 
+0

這使得他們都得到了類:不代表背景顏色:( –

+0

@DanielGustafsson應該是一個問題,你有什麼條件。在句法上,'ng-class'在這裏寫入正確 – tanmay

0

試試這個,

ng-class="{'in-behalf-of-background-color' : parameters.Username === quote.InBehalfOf , 'not-in-behalf-of-background-color' : ((parameters.Username !== quote.InBehalfOf) && (quote.InBehalfOf !== 'null'))}" 

參考angular ng-class doc