2016-08-01 81 views
1

我想編輯用戶時自動填寫表單中的所有字段。我設法填寫輸入和選擇字段,但不知道如何使用複選框來執行此操作,以檢查是否需要檢查它們。事實上,我做了,但幾天後,解決方案停止工作,甚至沒有任何改變。我寫了我這樣的代碼: HTML userDataCtr.user.admin的angularjs格式的複選框

<label><input type="checkbox" value="1" name="admin" ng-model="userDataCtr.user.admin" ng-checked="userDataCtr.user.admin">ROLE_CRO</label> 

和價值是1,但沒有被選中複選框。我嘗試了整數,字符串,但沒有發生任何事情。

有人能幫助我嗎?

由於

回答

1

複選框的值是boolean-所以userDataCtr.user.admin應該是truefalse

<label><input type="checkbox" name="admin" 
    ng-model="userDataCtr.user.admin">ROLE_CRO</label> 

參考:https://docs.angularjs.org/api/ng/input/input%5Bcheckbox%5D

編輯 作爲@Harris溫斯坦在下面這個答案的評論所指出的,你不應該使用NG-檢查和NG-模型在一起。

參考:https://docs.angularjs.org/api/ng/directive/ngChecked

+1

你應該添加到[NG-檢查(https://docs.angularjs.org/api/ng/directive/ngChecked)文檔,具體說,它應該_not_一個參考與'ng-model'一起使用。 –

+0

:)我沒有在上面的代碼中使用ng檢查... – kukkuz

+0

我知道你沒有;莎莎做到了。你關於使用布爾值的觀點很好(雖然'1'可能被Angular解釋爲truthy),但是我認爲,如果你指出在文檔中被警告的衝突指令的積極障礙,你的回答將更有助於Sasa。 –