将下拉值传递给其他控制器

时间:2016-02-27 14:48:53

标签: angularjs

首先,我选择下拉列表中的所有类别显示,之后当用户点击该类别时,系统将显示该类别下的所有列表。

<select ng-model="movielist" ng-options="cat as cat.name for cat in category">           
</select> //display all the category name

<p>Category Id: {{movielist.category_id}}</p> //will display the category id

问题:如何将类别ID传递给其他控制器以生成数据?

enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

这是通过使用ng-model和ng-options自动完成的。变量namings对我有点刺激,但代码本身应该有效。

根据你的命名:

  1. category是包含所有类别列表的变量
  2. 某个类别的category_id为属性
  3. movielist是您选择的范围变量。
  4. 因此,在定义像这样的内容时,示例中的代码可以正常工作:

    angular.module("app", []).controller('ctrl', function($scope) {
      $scope.category = [
        { "category_id": 0, "name": "zero" },
        { "category_id": 1, "name": "one" },
        { "category_id": 2, "name": "two" }
      ];
    });
    

    请在此处查看工作演示:

    http://jsbin.com/xawesuhegu/edit?html,js,output

    我建议使用一些更好的命名,例如categoriesselectedCategory