2016-05-09 6 views
1

fiddleNG-モデルは、コントローラ

こんにちは、

から定義されていませんか?

モデル名がbrandの場合に問題があることが判明しましたが、それは私の問題ではありません。私のモデルの名前はcar.brandです。

私の質問は - どのようにctrlからモデルにアクセスするのですか?

HTML

<div ng-controller="MyCtrl"> 
    <div ng-if="cars" ng-repeat="car in cars"> 
    <br> 
    <label>{{car.name}}</label> 
    <br> 
    <label>brand</label> 
    <select ng-model="car.brand" ng-options="car as car.name for car in brands" ng-change="loadBrands($index)"> 
     <option value="">select</option> 
    </select> 
    <label>model</label> 
    <select ng-model="brand.model" ng-options="car as car.model for car in cars[$index].models"> 
     <option value="">select</option> 
    </select> 

    </div> 
    <button ng-click="foo()"> 
    save all 
    </button> 
</div> 

JS

$scope.foo = function() { 
    alert("foo: " + $scope.car.brand); 
} 

感謝。あなたのモデルは、あなたが車の中で満たされるよう

答えて

0

あなたがng-repeatを使用しているとして、あなたは、多くの車を持っています:

$scope.foo = function() { 
    for(var i in $scope.cars) { 
    alert("foo: " + $scope.cars[i].brand); 
    } 
} 
+0

それで簡単ですか?それは思いがけないものです。私はばかです:D – user3700786

0

をあなたはcar.brand asまたはcar.model as

<div ng-controller="MyCtrl"> 
    <div ng-if="cars" ng-repeat="car in cars"> 
    <br> 
    <label>{{car.name}}</label> 
    <br> 
    <label>brand</label> 
    <select ng-model="car.brand" ng-options="car.brand as car.name for car in brands" ng-change="loadBrands($index)"> 
     <option value="">select</option> 
    </select> 
    <label>model</label> 
    <select ng-model="brand.model" ng-options="car.model as car.model for car in cars[$index].models"> 
     <option value="">select</option> 
    </select> 

    </div> 
    <button ng-click="foo()"> 
    save all 
    </button> 
</div> 

を使用するか、

を行う必要があります
<div ng-controller="MyCtrl"> 
    <div ng-if="cars" ng-repeat="car in cars"> 
    <br> 
    <label>{{car.name}}</label> 
    <br> 
    <label>brand</label> 
    <select ng-model="car" ng-options="car as car.name for car in brands" ng-change="loadBrands($index)"> 
     <option value="">select</option> 
    </select> 
    <label>model</label> 
    <select ng-model="brand" ng-options="car.brand as car.model for car in cars[$index].models"> 
     <option value="">select</option> 
    </select> 

    </div> 
    <button ng-click="foo()"> 
    save all 
    </button> 
</div> 

asng-modelが得られる値です