2016-05-04 11 views
1

私の角型のアプリでは、分類されたナビゲーションメニューリストを作ろうとしました。選択ボックスがあります。メニューが選択されると、そこにリストされているmenuItems(配列)が選択ボックスの下に表示されます。私は新しいメニューを追加するたびに(ヘッダーメニューまたはフッターメニュー)、itemItems配列に項目を追加できます(各オブジェクトには名前、URLなどのプロパティが含まれます)。ここに私のメニュー配列は、それにmenuItems配列です。angularjsの個々のカテゴリメニューの項目のリストを管理

私がメニューを選択すると、私は$ indexを使ってそのインデックスを取り、そのインデックスの特定のカテゴリを選択して変数に格納することができます。そのインデックスを使用して、そのメニューカテゴリを選択しようとしたことを選択して、目的を確認するためだけに名前を表示しようとしましたが、機能していません。

<select name="menuCategory" id="menuCategory" 
     ng-options="menu.name for menu in websiteContent.globalPage.menus track by $index" 
     ng-change="getCurrentMenu($index)" ng-model="currentMenu" class="form-control"> 
</select> 

とここに私の関数であり、私が何をしたいのか

$scope.getCurrentMenu = function(index){ 
     $scope.currentMenu = $scope.websiteContent.globalPage.menus[index]; 
}; 

はその後、私はメニューアイテムの配列に項目を追加することができ、それらの個々の項目を編集することができ、特定のメニューカテゴリを選択することです。どのカテゴリーでも、配列内の項目のリストが表示されます。どうすればそれを動作させることができますか?私を助けてください。

答えて

0

あなたは、選択したメニューのオブジェクト

<select ng-model="currentMenu" ng-options="menu as menu.name for menu in menus"></select> 

ルック例としてplunker

+0

おかげトンをオプション値を設定することができます。それは本当に私をたくさん助けました。現在、個々のメニューカテゴリの項目のリストを選択するためにcurrentMenu.listを使用することができます。しかし、私は質問があります。どのように私はcurrentMenuを取って、私たちのコントローラ内の変数に割り当てることができます。 like $ scope.newVar = $ scope.currentMenu; 私はこのようにしてみましたが、結果は得られませんでした。 – Mislam

+0

あなたは '$ scope.currentMenu'それ自身を使用することができます – aseferov

+0

しかし、もしあなたが' $ scope。$ watch'を使用する必要がある新しい変数にしたい場合は – aseferov

関連する問題