私はAngular JSを使っていて、ドロップダウンリストコントロールの選択オプションをAngular JSで設定する必要があります。これは馬鹿げた話かもしれませんが、私はAngular JSの初心者です。
以下は私の HTML のドロップダウン リスト コントロールです。
<select ng-required="item.id==8 && item.quantity > 0" name="posterVariants"
ng-show="item.id==8" ng-model="item.selectedVariant"
ng-change="calculateServicesSubTotal(item)"
ng-options="v.name for v in variants | filter:{type:2}">
</select>
人口が増えたら
<select ng-options="v.name for v in variants | filter:{type:2}" ng-change="calculateServicesSubTotal(item)"
ng-model="item.selectedVariant" ng-show="item.id==8" name="posterVariants"
ng-required="item.id==8 && item.quantity > 0" class="ng-pristine ng-valid ng-valid-required">
<option value="?" selected="selected"></option>
<option value="0">set of 6 traits</option>
<option value="1">5 complete sets</option>
</select>
value="0"
選択されるコントロールを設定するにはどうすればよいですか?
ベストアンサー1
ご質問の意味を理解していると思いますが、ng-model
ディレクティブは、コントロール内の選択された項目と の値の間に双方向バインディングを作成しますitem.selectedVariant
。つまり、item.selectedVariant
JavaScript を変更するか、コントロールの値を変更すると、もう一方が更新されます。item.selectedVariant
の値が の場合0
、その項目が選択されます。
variants
がオブジェクトの配列である場合は、item.selectedVariant
それらのオブジェクトの 1 つに設定する必要があります。スコープにどのような情報が含まれているかはわかりませんが、次に例を示します。
JS:
$scope.options = [{ name: "a", id: 1 }, { name: "b", id: 2 }];
$scope.selectedOption = $scope.options[1];
HTML:
<select data-ng-options="o.name for o in options" data-ng-model="selectedOption"></select>
これにより、「b」項目が選択された状態になります。