2015-01-15 69 views
15

我相信新的AngularJS和據我所知,ngClass指令可以用來插入類動態到類似的元件:ngClass不工作?

<input ng-class="{some-class: condition, another-class: anotherCondition}"> 

和角度會自動評估哪些條件都爲真,將在元件插入那些特定的類。

現在我試圖做一些事情,如:

<div class="form-group" ng-class="{has-success: form.email.$valid}"> 

因爲我有引導,它會自動郵件是否是有效顏色的標籤和輸入綠色。但它不工作,我在控制檯收到此特定錯誤:

Error: [$parse:syntax] http://errors.angularjs.org/1.2.27/$parse/syntax?p0=-&p1=is%20unexpected%2C%20expecting%20%5B%3A%5D&p2=5&p3=%7Bhas-success%3A%20form.email.%24valid%7D&p4=-success%3A%20form.email.%24valid%7D 
z/<@http://ajax.googleapis.com/ajax/libs/angularjs/1.2.27/angular.min.js:6:450 

等等....

我在做什麼錯?這是一個語法問題嗎?

回答

27

Theres在你的班級名稱短劃線,所以使用單引號!

ng-class="{'has-success': form.email.$valid}" 
+0

什麼時間。我們的回答完全貼在同一時間.. 17-21-21,你是毫秒我前面..:d – PSL 2015-01-15 17:26:41

+0

@PSL - 哈...我知道你總是在這些有問題的角度,一定要快! – tymeJV 2015-01-15 17:28:46

+0

這正是我在想的。現在我接受哪些?再加上upvote戰爭也在附近。 – Rohan 2015-01-15 17:35:18

10

這顯然是一個解析錯誤,你有無效的語法由於-在屬性名@{has-success: form.email.$valid}存在。你需要用引號將它們包裝起來。

嘗試: -

<div class="form-group" ng-class="{'has-success': form.email.$valid}">