[英]Parse json from php in js
我的php文件中有數組:
$invoices_arr = [];
foreach ($invoices as $key=>$invoice){
$invoices_arr[$key]['id']=$invoice->get_id();
$invoices_arr[$key]['code_text']=$invoice->get_code_text();
$invoices_arr[$key]['invoice_name']=$invoice->get_invoice_name();
$invoices_arr[$key]['status_invoice']=$invoice->get_status_invoice();
$invoices_arr[$key]['attachments']=$invoice->get_attachments();
}
echo json_encode(['invoices'=>$invoices_arr]);
我的ajax電話:
$.ajax({
data:{lead_id:$("#lead_id").val()},
url: sJSUrlGetAllLeadInvoices,
success: function (data) {
var obj = jQuery.parseJSON(data);
$("#all_invoice_table tbody").empty();
$(obj.invoices).each(function(key,value){
$('#all_invoice_table').append('<tr><td>'+value.invoice_name+'</td><td class="invoice_status">'+value.status_invoice+'<td>attt</td><td><button id="'+value.id+'" class="edit_invoice_'+value.id+'">Edit invoice</button</td><td><button class="send_invoice_btn_'+value.id+'">Send invoice</button></td><td><img class="delete_invoice_'+value.id+'" src="/images/icons/delete.gif"></td><td class="invoice_hidden_column_'+value.id+'">'+value.code_text+'</td></tr>');
});
}
});
在字段value.attachments
有php序列化數組,例如,字符串“ a:1:{i:0; s:36:” ../../ pdf_invoices / 2017-10-10015.pdf“;}”。 如何在js中將此字符串轉換為數組?
我嘗試這樣做:
var mas=JSON.parse(value.attachments);
但我在JSON數據的第1行第1列收到錯誤SyntaxError:JSON.parse:意外字符
我該如何解決? 謝謝你的幫助。
也許您應該在JSON中進行編碼之前先在PHP代碼中反序列化
您不需要使用jQuery.parseJSON解析結果,因為jQuery就是這么做的。 如果使用console.log()檢查數據,您將看到這是一個可供使用的Javascript對象。
您需要將數據類型作為json傳遞。 您可以使用jQuery parse方法解析json響應。
數據類型:json
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.