解析我有一個PHP文件中的以下JSON回覆:JSON無法使用JavaScript
[
{
"color": "black",
"product_name": "Prod2",
"revision": "apps/"
},
{
"color": "green",
"product_name": "Prod1",
"revision": "dev/"
}
]
(測試確定上JSONLint)
和Javascript:
$(document).ready(function(){
$('.target').keyup(function() {
var package_name = "name";
var package_version = "version";
var filter_results = "filter";
$.post('includes/package_filter.php', { package_name: package_name, package_version: package_version, filter_results: filter_results }, function(return_result) {
obj = JSON.parse(return_result);
alert(obj.product_name);
var existingDiv = document.getElementById('other');
existingDiv.innerHTML = CreateTable(return_result);
});
});
});
的return_result似乎不正確,因爲我得到Error: SyntaxError: JSON.parse: unexpected end of data
時做JSON.parse 我也不會去更進一步的alrt ... 什麼可能是錯的?
我的PHP文件類似於:
<?php
function package_filter($package_name, $package_version, $filter_results){
foreach ($descriptions as $descriptions_display) {
...
$array_to_return[] = array('color' => $color , 'product_name' => $descriptions_display['product_name'] , 'revision' => $descriptions_display['revision']);
}
return json_encode($array_to_return);
}
?>
我的目標是創建一個表,我CreateTable
功能,但有錯之前的東西。
您發佈的JSON字符串很好。這裏一定還有別的事情要做。 –
嘗試使用'eval('('+ return_result +')')'。 – PHPglue
你確定jQuery沒有注意到響應是JSON並已經將它轉換爲一個對象給你? –