簡體   English   中英

如何在Angular Chosen中設置默認選擇的值?

[英]How to set default selected value in Angular Chosen?

我有一個select標簽,我正在應用角度選擇。

這是我的select標簽

<select name="rname" id="rname" ng-model="rname" ng-init="rname='CustomReport'" 
   ng-options="key as value for (key , value) in reportsValuesOptions track by key" chosen>
        <option value="">---Select---</option>
</select>

上面的select標記將從下面的對象填充

$scope.reportsValuesOptions = {'Cash Position Report':'Cash Position Report','Detail Report':'Detail Report','Reconciliation Report':'Reconciliation Report','Summary Report':'Summary Report','Sweep Report':'Sweep Report','FCCS/FBPS Detail Report':'FCCS/FBPS Detail Report','CustomReport':'Custom Report Name'};

該對象是select標簽的一對值和選項,其中keyoptions tags valuevalueoption tag text

現在我想使用ng-initselect標簽的默認值設置為'CustomReport'作為其option value ,將'Custom Report Name'為上述對象的option text

我嘗試過ng-init="rname='CustomReport'" ,但它不起作用

如何從對象的鍵值對設置其值?

完整的例子

您可以像這樣簡單地使用ng-init

<select ng-init="somethingHere = options[0]" 
        ng-model="somethingHere" 
        ng-options="option.name for option in options">
</select>

您的解決方案的問題是因為您提供了一個對象而AngularJS主要是為數組設計的,它導致AngularJS無法正確跟蹤它們。 您可能想為reportsValueOptions編寫一個較短的對象,但它應該是一個對象數組,其形式類似於以下內容:

[
  {label: 'First Label', value:'first-option'},
  {label: 'Second Label', value:'second-option'}
]

以下是帶有修改對象的jsfiddle的修改版本,該版本還顯示了選擇了哪一個。

您還可以在此處了解有關對象問題的更多信息: https//docs.angularjs.org/api/ng/directive/ngOptions#complex-models-objects-or-collections-

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM