2013-05-13 45 views
7

我試圖有條件地啓用/禁用使用我的保存按鈕NG-禁用:NG-禁用不出現工作

<button type="button" title="Save Changes" ng-click="onSaveChanges()" ng-disabled="{{!data.modified}}">Save</button>

我有一個$ scope.data.modified變量改變當我的數據被修改時爲true。不管這是真是假,保存按鈕被啓用。元素檢查顯示ng-disabled的值在「true」和「false」之間切換,但按鈕始終處於啓用狀態。

+7

請嘗試ng-disabled =「!data.modified」 – rajkamal 2013-05-13 17:42:28

+0

謝謝,我剛剛發現了這一點。我從來不清楚何時在Angular中使用{{}}。有沒有什麼時候使用它們,什麼時候不使用? – Hilo 2013-05-13 19:35:44

回答

24

當您使用角度js屬性(如ng-show,ng-hide,ng-disabled)時,它應該沒有蛇符號Ex。 ng-disabled="!data.modified"。對於像class這樣的其他普通屬性,你必須使用它的符號和蛇符號。防爆。 class={{aVaribaleinControllerScope}}

+2

謝謝!我沒有聽說過蛇符號這個詞,我喜歡它。 – wmitchell 2014-10-30 19:33:17

+1

我認爲他是相反的,他的意思是CamelCase爲somethingLikeThis和蛇符號用於類似這樣的東西(http://en.wikipedia.org/wiki/ Snake_case,http://en.wikipedia.org/wiki/CamelCase),除非你的意思是{{看起來像一條蛇......這很有趣,但Snake的情況已經定義了。 – 2014-11-11 16:51:39