我正在尋找一種方法來使用http.get服務從它們所屬的聯邦狀態中檢索城市。我從一個選定的州創建了一個依賴城市的下拉菜單。Angularjs依賴州 - >城市下拉,從http.get服務檢索城市
這裏是工作提琴作爲一個基地,一個DINAMIC版本:
http://jsfiddle.net/amrigo/v8u7v4af/
我的意思是有州和城市:
function CountryController($scope) {
$scope.countries = {
'Michigan': {
'Detroit': [],
'Flint': []
},
'Texas': {
'Austin': [],
'Houston': []
},
'California': {
'Los Angeles': [],
'San Francisco': []
}
};
}
我怎麼能寫一個工廠,接收狀態ID並調整爲JSON格式:('Los Angeles':[],'San Francisco':[])。
.factory('citiesByState', function($http) {
return {
getVersion: function(id) {
return $http.get('http://www.service.com/ckeck_cities.php')
.then(function(response) {
return response.data;
});
}
};
});
<select class="form-control input-lg" id="country" ng-model="states" ng-options="country for (country, states) in countries">
<option value=''>Select</option>
</select>
<select class="form-control input-lg" id="state" ng-disabled="!states" ng-model="cities" ng-options="state for (state,city) in states">
<option value=''>Select</option>
</select>
什麼狀態ID?數據不包含任何ID屬性。如果您使用嵌套數組而不是嵌套對象,可能會更簡單 – charlietfl
您的意思是這種格式:? '''''''''''''','stateName':'Michigan':{'id':'1','name':'底特律'}, {'id':' '''','name':'Flint'} }, 'id':'2','stateName':'Texas':{'id':'3','name':'Austin' }, {'id':'4','name':'Houston'} }, 'id':'3','stateName':'California':{'id':'5' ,'name':'Los Angeles'}, {'id':'6','name':'San Francisco'} } };' –
close,但這不是有效的結構,數組 – charlietfl