2016-07-19 5 views
1

ng-optionでドロップダウンを行い、グループを追加しました。 データにはgrupを追加したオプトイン用の空の文字列が含まれています。 ドロップダウンで2つの空のノードが表示されます。あなたは、単に色のこれらの空に色合いを削除することができますng-optionは2つの空のオプションを表示し、空の値はグループ

<select ng-model="myColor" ng-options="color.name group by color.shade for color in colors"> 
    </select> 

Plunker link

+0

ので、質問は何ですか? –

+0

もちろん、空のオプションがあります。なぜなら、あなたは 'shade: '''を持っているからです。 – dfsq

+0

あなたは空の 'optgroup'を持つことはできません。 '' 'optgroupは値を持たず、したがって追跡することができないので、' '' shadeのoptgroup行を作成してから、 '' black''の第2のoptgroupを作成しています。 – Claies

答えて

1

: ドロップダウン

angular.module('selectExample', []) 
    .controller('ExampleController', ['$scope', function($scope) { 
    $scope.colors = [{ 
     name: 'black', 
     shade: '' 
    }, { 
     name: 'white', 
     shade: 'light', 
     notAnOption: true 
    }, { 
     name: 'red', 
     shade: 'dark' 
    }, { 
     name: 'blue', 
     shade: 'dark', 
     notAnOption: true 
    }, { 
     name: 'yellow', 
     shade: 'light', 
     notAnOption: false 
    }]; 
    $scope.myColor = $scope.colors[2]; // red 
    }]); 

HTMLをこれら2つの空のノードを削除する必要があります。

ちょうどあなたのコントローラでこれを含める:

$scope.colors = $scope.colors.map(function(value) { 
    if (value.shade == '') { 
    value.shade = undefined; 
    } 
    return value; 
}); 
+0

うまく働いた – Gagan

+0

助けてくれてうれしい.. – developer033

+0

答えを受け入れることができますか? – developer033

関連する問題