2017-09-05 88 views
1
<select 
    get-sport 
    name="sportId" 
    id="sportId" 
    ng-model="sm.sport_id" 
    ng-change="changeSport()" 
    ng-options="sport.sport_id as sport.name for sport in sports track by sport.sport_id" 
    ng-required="true"> 
    <option value="" selected="selected">-- Select Sport--</option> 
</select> 

return { 
     scope : true, 
     link : function (scope) { 

      scope.spinning = true; 
      $http.get('v1/sport') 
       .success(success) 
       .error(error); 

      function success(data){ 
       scope.sports = data.data; 
       scope.spinning = false; 
      } 

      function error(error) { 
       console.log(error); 
      } 

     } 
    }; 

在我的控制台Array [ Object, Object, Object, Object, Object, Object, Object, Object, Object ]获得在NG选项空白值angularjs

目标对象的名称:板球,sport_id: '1'

进入我的sm.sport_id获得价值3应该等于名称:足球,sport_id:3,但默认情况下它是选择空值我不明白为什么请指导感谢一吨提前

+0

请添加一个json数组示例 –

+0

对象{sport_id:“1”,name:“Cricket”} Object {sport_id:“2”,name:“Hockey”} Object {sport_id:“1”,名称:“足球”} – Amy

+0

请参阅此博客https://www.undefinednull.com/2014/08/11/a-brief-walk-through-of-the-ng-options-in-angularjs/ – Winnie

回答

0

你的答案是here

“你只是不能把价值作为收藏的标签和跟踪。你必须选择一个或另一个。“

<select ng-model="sport" ng-options="sport as sport.name for sport in sports track by sport.id"> 

一个在这种情况下,如果你想删除你只能得到所选择的运动为您选择的选项是

$scope.sports = [{id: 1, name: 'Cricket'}, {id: 2, name: 'Hockey'}, {id: 3, name: 'Football'}] 
    $scope.sport = $scope.sports[0]; 
+0

为什么我更改模型名称。我需要使用相同的型号名称 – Amy

+0

您可以使用您的型号名称,我只需在我的TRYS –

+0

中使用差异型号名称,重要的是如何使用追踪选项 –

0

不是ID空白选项,不为它初始化值。在添加选项NG-如果。

<select 
    get-sport 
    name="sportId" 
    id="sportId" 
    ng-model="sm.sport_id" 
    ng-change="changeSport()" 
    ng-options="sport_id as sport.name for sport in sports track by sport_id" 
    ng-required="true"> 
    <option value="" ng-if="hideOption" selected="selected">-- Select Sport--</option> 
</select> 
+0

如果我这样做,它会取第一个值不取模型值 – Amy

+0

@Amy请显示您的模型值。而这个代码不带值 – Akashii

+0

<选择 得到竞技 NAME = “sportId” ID = “sportId” NG-模型= “team.sport_id” NG-变化= “changeSport()” NG- options =“sport.sport_id as sport.name for sport in sport track by sport。sport_id” NG-所需= “真”> <期权价值= “” 选择= “选择”> - 选择Sport-- – Amy

0

我克服这一点我自己的sport_id需要fr4om整数转换为字符串,我这样做,它像一个魅力的工作