0

選択ボックスにデフォルトのオプションを設定する方法...いくつかのオプションを試しましたが、取得できません

json から取得したオブジェクトの値を使用して、contralador にスコープを作成してみました。

このような:

$scope.productSelect = $scope.item[0];

この私のコード:

html:

<select id="variant" class="form-control variant-select"
        ng-model="productSelect"
        ng-options="product as product.formattedPrice+' - '+product.variantQualifierName for product in item[0] track by product.url">

JS:

(function (){

  'use strict';

  /**
   * @ngdoc function
   * @name variantApp.controller:AppCtrl
   * @description
   * # AppCtrl
   * Controller of the variantApp
   */

   var app = angular.module('variantApp.product.variantCtrl', []);

   app.controller('AppCtrl',
    [
      '$scope',
      'ProductVariant',
      '$log',
      function ($scope, ProductVariant, $log){

      $scope.item = [
        ProductVariant.getData()
      ];

     $scope.productSelect = $scope.item[0];

     $log.info($scope.productSelect);


   }]);

})(window, angular);
4

4 に答える 4

1

助けてくれてありがとう。

firebugと皆さんの助けを借りて、特別なskubskiで解決しました

私が行った変更:

<select id="variant" class="form-control variant-select"
        ng-model="productSelect"
        ng-options="product as product.formattedPrice+' - '+product.variantQualifierName for product in item[0] track by product.url">
</select>

このため:

<select id="variant" class="form-control variant-select"
        ng-model="productSelect"
        ng-options="product as product.formattedPrice+' -     '+product.variantQualifierName for product in item track by product.url">
</select>

$scope.item = [
    ProductVariant.getData()
  ];

 $scope.productSelect = $scope.item[0];

このため:

$scope.item = ProductVariant.getData();
$scope.productSelect =  $scope.item[0];

これらの変更により、製品の 1 つがデフォルトで選択されるようになりました。

于 2015-06-23T10:39:04.260 に答える
0

あなたが持って ng-options="product as product.formattedPrice+' - '+product.variantQualifierName for product in item[0] track by product.url" いる$scope.productSelect = $scope.item[0];

したがって、1 つのオプションから選択しようとしているか、productSelected を同じ配列に初期化しています。

于 2015-06-23T09:30:36.583 に答える