Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在angular中将数组传递给ng选项?_Javascript_Arrays_Angularjs_Object - Fatal编程技术网

Javascript 如何在angular中将数组传递给ng选项?

Javascript 如何在angular中将数组传递给ng选项?,javascript,arrays,angularjs,object,Javascript,Arrays,Angularjs,Object,我的数组是这样的: $scope.states = [{ "AB" : "Abia", "AJ" : "Abuja", "AN" : "Anambra"}]; 以下是HTML: <select ng-options="state for state in states"> <option value=""></option> </select>

我的数组是这样的:

$scope.states = [{                  
    "AB" : "Abia",
    "AJ" : "Abuja",                
    "AN" : "Anambra"}];
以下是HTML:

<select ng-options="state for state in states">
    <option value=""></option>
</select>


如何正确地传递它?

您的
状态
是一个包含单个元素的数组-一个状态为键/值对的对象。您仍然可以使用带有
ng选项的对象
——尽管不确定为什么需要数组——只要您引用带有
“…处于状态[0]”的源对象即可

ng选项
还需要
ng型号

<select ng-model="selectedState"
        ng-options="key as state for (key, state) in states[0]">
</select>

上面将
selectedState
设置为
key
(即缩写)。您也可以将其设置为
状态


当然,如果不需要将
状态
设置为单个元素的数组,只需将其设置为元素本身,则可以将其称为
“…(键,状态)状态”
而不是
。。。在states[0]“

您的
states
是一个带有单个元素的数组-一个状态为键/值对的对象。您仍然可以使用带有
ng选项的对象
-不确定为什么需要数组-只要您使用
引用源对象即可…”。。。在状态[0]“

ng选项
还需要
ng型号

<select ng-model="selectedState"
        ng-options="key as state for (key, state) in states[0]">
</select>

上面将
selectedState
设置为
key
(即缩写)。您也可以将其设置为
state

当然,如果您不需要将
states
作为单个元素的数组,只需将其设置为元素本身,那么您可以将其称为
“…(键,状态)in states”
,而不是
…in states[0]”

JS:

$scope.states = {
        "AB" : "Abia",
        "AJ" : "Abuja",
        "AN" : "Anambra"};
<select ng-options="k as v for (k,v) in states"></select>
HTML:

$scope.states = {
        "AB" : "Abia",
        "AJ" : "Abuja",
        "AN" : "Anambra"};
<select ng-options="k as v for (k,v) in states"></select>

JS:

$scope.states = {
        "AB" : "Abia",
        "AJ" : "Abuja",
        "AN" : "Anambra"};
<select ng-options="k as v for (k,v) in states"></select>
HTML:

$scope.states = {
        "AB" : "Abia",
        "AJ" : "Abuja",
        "AN" : "Anambra"};
<select ng-options="k as v for (k,v) in states"></select>


您的Plunkr演示非常复杂,无法代表question@Vlad274,仅仅看一段代码就是我需要知道的,因为plunker很漂亮irrelevant@AnthonyAkpan,什么是
状态。[0]
?这不是有效的语法。另外,
ng选项
需要
ng模型
@NewDev,我只是想弄清楚out@AnthonyAkpan,并且您的
声明
数组只有一个元素。这是故意的吗?如果您打算使用一个对象,那么语法是
ng options=“key as value for(key,value)in states”
(或类似的东西)。您的Plunkr演示非常复杂,不能代表question@Vlad274,仅仅看一段代码就是我需要知道的,因为plunker很漂亮irrelevant@AnthonyAkpan,什么是
状态。[0]
?这不是有效的语法。另外,
ng选项
需要
ng模型
@NewDev,我只是想弄清楚out@AnthonyAkpan,并且您的
声明
数组只有一个元素。这是故意的吗?如果您打算使用一个对象,那么语法是
ng options=“key as value for(key,value)in states”
(或类似的东西)