2017-11-20 21 views
0

デフォルトで選択ボックスで最初のオプションを選択します。ここでの課題は、ページが動的に作成されるときに複数の選択ボックスを持つ可能性があることです。デフォルトで、[選択]ボックスを動的に選択します。

あなたは自分のコードを見て達成しようとしていることを理解するでしょう。

HTML:

<form class="form-inline"> 
    <div class="form-group form-group-grid" ng-repeat="fields in selectedTabData.requiredField" ng-switch="fields.paramType"> 
     <label>{{fields.paramName}}<span class="asterisk" ng-if="fields.mandatory==true">*</span></label> 
     <input type="text" class="form-control" ng-switch-when="Text" ng-model="fields.fieldValue" ng-attr-id="{{fields.paramName}}Id"> 
     <select class="form-control" ng-switch-when="DropDown" ng-options="field.paramKey as field.paramValue for field in fields.paramData" ng-model="fields.fieldValue" ng-attr-id="{{fields.paramName}}Id"> 
     </select> 
    </div> 
    <div class="form-group"> 
     <button type="submit" class="btn btn-primary form-inline-grid-button" ng-click="getReport()">Run Report</button> 
    </div> 
</form> 

選択されたデータは可変のようにコントローラ内$scope.selectedTabData.requiredField

私が選択した値をプッシュモデルの下で入手可能である:私が試し

$scope.selectedTabData.requiredField.forEach(function(item) 
     { 
       paramValue.push(item.fieldValue); 
       paramName.push(item.paramName); 
}) 

これを行う:ng-init="fields.fieldValue = fields.paramData[0]"

<select class="form-control" ng-switch-when="DropDown" ng-options="field.paramKey as field.paramValue for field in fields.paramData" ng-model="fields.fieldValue" ng-init="fields.fieldValue = fields.paramData[0]" ng-attr-id="{{fields.paramName}}Id"> 
            </select> 

どのように動作するのかわかりません。誰もがこれで私を助けることができますか?

+0

多分これは助けることができますか? https://stackoverflow.com/a/18195305/5751251 – DSCH

+0

私はすでにそれを試みたと思います。 ng-init = "fields.fieldValue = fields.paramData [0]" – Phoenix

+0

これは私の仕事ではありませんでした。 – Phoenix

答えて

1

あなたはこの行は

$scope.fields.fieldValue = x; 

この例で追加したタグ

<select ng-model="fields.fieldValue"> 
    <option ng-repeat="field in fields.paramData" value="{{field.paramKey}}"> 
     {{field.value}} 
    <option> 
</select> 

とコントローラにおける内部のリピートをngのことで、それを可能にすることができ、xがしたいこと「field.value」でありますデフォルト選択されたオプションとして。

+0

$ scope.selectedTabData.requiredField.forEach(function(item) { item.fieldValue = item.paramData [0] .paramValue; }) – Phoenix

+0

これはどうすればいいですか?上記のコードは私のために働いていません – Phoenix

+0

心配しないで、私はまだHTMLでNg-initを持っていました。私はそれを削除し、その後、voilà...ありがとう – Phoenix

関連する問題