0
我正在建立一個基於來自API的JSON數據的無線電輸入動態列表。AngularJS-動態輸入[電臺]不會保持檢查
我使用ngRepeat
+ track by
,input[radio]
和ngValue
。
任何新XHR請求將刷新數據的範圍,但目前檢查無線電(如果有的話),將取消選中。
看到這個plnkr演示:http://embed.plnkr.co/2q1A7krBzxIjkfwhXYcK/preview
這可以通過在ngValue
使用插值指令來解決,但感覺好像我做錯了:
<input type="radio" name="c" ng-value="{{ choice }}" ng-model="selected.choice" required>
這也可以通過使用ng-init
來解決,但它仍然覺得我做錯了:
<input type="radio" name="c" ng-init="c = choice" ng-value="c" ng-model="selected.choice" required>
有人可以請給我解釋一下這是怎麼回事?
相關問題:
非常感謝您的回答:)我希望AngularJS使用某種isEqual http://underscorejs.org/#isEqual進行比較。 – kemar
是的,這在很多情況下都會有用。我想他們有使用對象引用的好理由,儘管我不知道它是什麼。我想你可以通過爲你的'ng-model'使用原始類型來解決這個問題,但是這會爲新問題開闢一扇門,因爲你必須編寫代碼來找到與模型匹配的正確對象。無論如何,如果你想保存選擇,你必須這樣做。 – ivarni