select 标签上的值 HTML 将数组转换为字符串 Javascript
value on select tag HTML convert array to string Javascript
我正在使用 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>
如果我 select 一个选项,然后我执行 console.log(address.state) 我将对象作为字符串而不是数组获取。如何将对象作为数组 (json).
控制台输出如下所示:
[state: "{"name":"State 1","cities":["City Mexico 1","City Mexico 2","City Mexico 3"]}"]
我想以数组的形式获取对象,因为那样我就做 $Scope.address.state.city
您可以在 <select>
标签中执行 ng-options
,而不是在 <option>
标签上执行 ng-repeat
:
<select ng-model="address.state" ng-options="state.name for state in states" placeholder="Estados"></select>
这样状态的对象被传递到 $scope.address
你可以做 $scope.address.state.cities
我正在使用 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>
如果我 select 一个选项,然后我执行 console.log(address.state) 我将对象作为字符串而不是数组获取。如何将对象作为数组 (json).
控制台输出如下所示:
[state: "{"name":"State 1","cities":["City Mexico 1","City Mexico 2","City Mexico 3"]}"]
我想以数组的形式获取对象,因为那样我就做 $Scope.address.state.city
您可以在 <select>
标签中执行 ng-options
,而不是在 <option>
标签上执行 ng-repeat
:
<select ng-model="address.state" ng-options="state.name for state in states" placeholder="Estados"></select>
这样状态的对象被传递到 $scope.address
你可以做 $scope.address.state.cities