选择标记HTML上的值将数组转换为字符串Javascript

选择标记HTML上的值将数组转换为字符串Javascript,javascript,html,arrays,angularjs,angular-ngmodel,Javascript,Html,Arrays,Angularjs,Angular Ngmodel,我将Javascript与Angular Js一起使用,在我的控制器中,我有以下项目: $scope.address = []; $scope.states = [ { name:"State 1", cities:[ "City Mexico 1", "City Mexico 2","City Mexico 3"] }, { name:"State 2", cities:["City 1", "City 2", "City 3"] } ]; 在我看来,我正在做: &

我将Javascript与Angular Js一起使用,在我的控制器中,我有以下项目:

$scope.address = [];
$scope.states = [
    { name:"State 1", cities:[ "City Mexico 1", "City Mexico 2","City Mexico 3"] },
    { name:"State 2", cities:["City  1", "City  2", "City  3"] }
  ];
在我看来,我正在做:

<select ng-model="address.state" placeholder="Estado" >
            <option ng-repeat="state in states" value="{{state}}"> {{state.name}}</option>
          </select>  

我想将对象作为数组获取,因为这样我就可以执行$Scope.address.state.city

而不是在
标记上执行
ng repeat
,您可以在
标记中执行
ng options

<select ng-model="address.state" ng-options="state.name for state in states" placeholder="Estados"></select>

通过这种方式,状态对象被传递到
$scope.address
中,您可以执行
$scope.address.state.cities


工作示例:

当您以
value=“{{{state}}}”的形式传入时,
由于“{…}}”的原因,您正在将该对象变成字符串,并使用
ng选项
传递实际的对象
<select ng-model="address.state" ng-options="state.name for state in states" placeholder="Estados"></select>