0
我有綁定到對象($ scope.selectedProperties)的陣列的多選下拉:設定模型不結合多選DDL
<select id="propertyDdl" multiple="multiple"
ng-model="selectedProperties"
ng-options="account.property_name group by account.client_name for account in accountInfo">
</select>
(accountInfo是包含陣列的範圍屬性對象):
[{client_name:"Client 1", is_demo:false, property_name:"Prop 1"},
{client_name:"Client 2", is_demo:false, property_name:"Prop 2" },
{client_name:"Client 3", is_demo:false, property_name:"Prop 3" }]
上的特定事件,我存儲選定項的數組:
$scope.updateSessionProperties = function() {
CachingService.cachedSelectedProperties = $scope.selectedProperties;
};
...再後來重新應用它們:
if(CachingService.cachedSelectedProperties && CachingService.cachedSelectedProperties.length>0){
$scope.selectedProperties = CachingService.cachedSelectedProperties;
}
的對象(selectedProperties)陣列它被綁定到的結構相同accountInfo:
[{client_name:"Client 1", is_demo:false, property_name:"Prop 1"},
{client_name:"Client 2", is_demo:false, property_name:"Prop 2" }]
沒有運氣...下拉列表顯示「沒有選擇」,即使它綁定的範圍屬性是相同的對象。我曾嘗試執行$ scope。$ apply(),但select元素不會重新綁定。
哪裏'accountInfo'被定義? –
$ scope.accountInfo在$ scope開始處定義,並且是一個與模型相同的數組:[{client_name:「Client 1」,is_demo:false,property_name:「Prop 1」}, {client_name:「Client 2「,is_demo:false,property_name:」Prop 2「}, {client_name:」Client 3「,is_demo:false,property_name:」Prop 3「...}]有趣的是,如果我將accountInfo中的項目推送到selectedProperties綁定DOES可以工作,但是將其他任何方式的相同項目推入selectedProperties失敗。 – DShultz