2015-12-04 70 views
0

我有一個AJAX調用,它返回對象的數組像這樣的數組:如何對象的AJAX數組轉換成陣列

enter image description here

現在,它正常工作與我的分析它到一個表的代碼在AngularJS中。

我想實現分頁與表和問題分頁不起作用的對象,它必須是一個數組。我不能將這個對象數組轉換爲數組數組進行分頁。

我Ajax調用的代碼是:

$http({ 
      method: 'POST', 
      url: 'server/search/searchQuery.php', 
      data: {data: 'getData', searchText: id.SearchText , typeOfStudy: qTypeOfStudy , typeOfSpecies: qTypeOfSpecies , typeOfSpeciality: qTypeOfSpeciality }, 
      headers: {'Content-Type': 'application/json'}, 
      dataType:"json" 
     }).success(function(data) { 

這將是巨大的,如果有人可以指向一個職位或一個示例代碼,它可以轉換的。

我已經在php端做了json_encode。

回答

3

也許你需要這個解決方案:

var aData = []; 
    $http({ 
      method: 'POST', 
      url: 'server/search/searchQuery.php', 
      data: {data: 'getData', searchText: id.SearchText , typeOfStudy: qTypeOfStudy , typeOfSpecies: qTypeOfSpecies , typeOfSpeciality: qTypeOfSpeciality }, 
      headers: {'Content-Type': 'application/json'}, 
      dataType:"json" 
     }).success(function(data) { 
     var aData = []; 
     for(var k in data){ 
     aData.push(data[k].id, data[k].primary_authors, data[k].primary_titles, data[k].pub_year); 
     } 
    } 
+0

謝謝曼努埃爾,雖然它解析代碼,它創建了一個單數組。我正試圖將您的示例代碼轉換爲關聯(多維數組)。 – CalmWinds

+1

我認爲在關聯數組上進行轉換的唯一方法是將其轉換爲對象,但是您需要一個數組嗎?您可以使用'aData [k] = [data [k] .id,data [k] .primary_authors,data [k] .primary_titles,data [k] .pub_year];'在foreach上代替我的數組獲得多維位置數組回答。如果你得到更好的解決方案,請讓我知道。 –

+0

它爲我工作。現在我只需要向數組添加標籤,以便ng-repeat可以解析數據 – CalmWinds

0

在PHP中,嘗試用:

$associateArray = array(
       'name'   => 'Test Data', 
       'quantity'  => 1, 
       'unit'   => 'ks', 
       'unit_price' => 200 
     ); 

轉換關聯數組到JSON對象

$JsonObject = json_encode($associateArray); 

轉換JSON字符串與之關聯的數組

$SociateArray = json_decode($JsonString, true); 
+0

感謝@PaoIm,我一定會努力實現您的解決方案,以及。 – CalmWinds

相關問題