簡體   English   中英

ng-repeat中的AngularJS ng-option

[英]AngularJS ng-option inside ng-repeat

很簡單的問題,但不知道如何解決它

我有重復,重復模型視頻。

模型有一個選定的值,我想在下拉列表中看到它:

<div data-ng-repeat="singleVideo in model.videos">
    {{singleVideo}}<select data-ng-model="singleVideo.name" ng-options="item.name for item in videoList"></select>
</div>

這是視頻模型:

$scope.model = {
                 videos:[
                    {id:1,name:"VIDEO_ONE"},
                    {id:2,name:"VIDEO_TWO"}
                ]
            }

這是videoList項:

$scope.videoList = [
                {id:1,name:"VIDEO_ONE"},
                {id:2,name:"VIDEO_TWO"},
                {id:3,name:"VIDEO_Three"}
            ];

我只希望看到第一個下拉值設置為VIDEO_ONE,第二個下拉值將設置為VIDEO_TWO。

目前下拉列表是空的。

我怎樣才能做到這一點?

這是預期的結果,目前我將下拉框清空

您只需要item.id as item.name for item in videoList - item.id as item.name for item in videoList設置ng-options的值,將item.id as item.name for item in videoList 見下面的代碼。

(我將id設置為值,因為我認為它更適合。在某處你還需要根據id 。或者ver verca更新你的name屬性。你的選擇。)

 angular.module('testapp', []) .controller('appCtrl', function($scope) { $scope.model = { videos:[ {id:1,name:"VIDEO_ONE"}, {id:2,name:"VIDEO_TWO"} ] }; $scope.videoList = [ {id:1,name:"VIDEO_ONE"}, {id:2,name:"VIDEO_TWO"}, {id:3,name:"VIDEO_Three"} ]; }); 
 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <body ng-app="testapp"> <div ng-controller="appCtrl"> <div ng-repeat="singleVideo in model.videos"> {{singleVideo.name}} <select ng-model="singleVideo.id" ng-options="item.id as item.name for item in videoList" ng-selected="true"></select> </div> </div> </body> 

<div data-ng-repeat="singleVideo in model.videos">
    {{singleVideo}}<select data-ng-model="singleVideo.name" ng-options="item.name as item.name for item in videoList"></select>
</div>

暫無
暫無

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

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