簡體   English   中英

JSON中的關聯數組解碼

[英]Associative array decoding in JSON

我試圖根據數據庫中的信息更改元素列表的類。 我認為簡單的方法是通過一個數組。 我在php端構建數組如下。

 $setClassResult = array();
 while($row = mysql_fetch_array( $result ))
 {
 $setClassResult= array_push_assoc($setClassResult, $row['item_id'], $row['parent']);
 }  
 echo json_encode(array($setClassResult));
 break;

給了我......

 [{"830":"0","734":"830","733":"830","732":"830","735":"830","737":"830","736":"830","738":"830","739":"830","740":"830","741":"830","742":"830","872":"0","869":"872","868":"872","880":"872","964":"872"}]

解碼和更改我使用的元素.....

  $.each(data, function(key, val) {
        $("#recordsArray_"+key).toggleClass(val);   
        alert(key+" "+val);
  });

警報發生一次0[object,Object]這是因為我創建數組的方式? 我注意到的第一件事是JSON周圍的[]

無需添加額外數組,請嘗試:

echo json_encode($setClassResult);

您的結果是對象格式數組:

 [{"830":"0","734":"830","733":"830","732":"830","735":"830","737":"830","736":"830","738":"830","739":"830","740":"830","741":"830","742":"830","872":"0","869":"872","868":"872","880":"872","964":"872"}]

因此,當你進行迭代時,它首先遍歷數組並且鍵是0並且值是一個對象。所以,如果你稍后遍歷作為對象的值,你將得到它

或者作為soju,如果你不需要將它存儲在對象數組中但只有一個對象並迭代一次。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM