Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

key-value pairs in ng-options

I need to use an associative array as data source for my select options using AngularJS.

Is it possible to use an array like this?

{     "key1": "val1",     "key2": "val2",     "key3": "val3",     ... } 

and get something like this:

<select>     <option value="key1">val1</option>     <option value="key2">val2</option>     <option value="key3">val3</option>     ... </select> 

I read docs, but I can't understand how to achieve this.

like image 502
davioooh Avatar asked Feb 12 '14 17:02

davioooh


People also ask

What is key-value pairs?

A key-value pair (KVP) is a set of two linked data items: a key, which is a unique identifier for some item of data, and the value, which is either the data that is identified or a pointer to the location of that data. Key-value pairs are frequently used in lookup tables, hash tables and configuration files.

How do you create a key-value pair?

To add key-value pair in C# Dictionary, firstly declare a Dictionary. IDictionary<int, string> d = new Dictionary<int, string>(); Now, add elements with KeyValuePair. d.

Which data type key-value pairs are used?

A key-value pair (KVP) is an abstract data type that includes a group of key identifiers and a set of associated values. Key-value pairs are frequently used in lookup tables, hash tables and configuration files.


1 Answers

use ng-option:

<select ng-model="blah" ng-options="key as value for (key , value) in data"></select> 

or use ng-repeat:

<select>     <option ng-repeat="(key, value) in data" value="{{key}}">{{value}}</option> </select> 

data in controller:

$scope.data = {     "key1": "val1",     "key2": "val2",     "key3": "val3",     ... }; 
like image 100
Chen-Tsu Lin Avatar answered Sep 22 '22 08:09

Chen-Tsu Lin