【发布时间】:2013-12-14 04:37:02
【问题描述】:
我已经为此工作了很长一段时间,并且我已经阅读了 TONS 关于 SO 的帖子,试图弄清楚我需要如何做到这一点,我似乎无法让它工作。我认为这一定是我编码事物的方式的某些方面。所以投反对票,但希望有好心人能帮助我。
我已经使用 jsonlint 进行了测试,它返回有效。我从服务器收到了带有值的响应,除了警报(响应);之外,我似乎无法在浏览器中得到任何东西。我需要能够分别访问“cat_id_PK”和其他元素的值以循环并在 html 表格单元格中显示它们。
JSON:
{
"income": [
{
"cat_id_PK": 14,
"cat_name": "test1",
"cat_amount": "100.00"
},
{
"cat_id_PK": 15,
"cat_name": "test2",
"cat_amount": "200.00"
},
{
"cat_id_PK": 34,
"cat_name": "test3",
"cat_amount": "300.00"
},
"expense": [
{
"cat_id_PK": 14,
"cat_name": "tes41",
"cat_amount": "400.00"
},
{
"cat_id_PK": 15,
"cat_name": "test5",
"cat_amount": "500.00"
},
{
"cat_id_PK": 34,
"cat_name": "test6",
"cat_amount": "600.00"
}
]
}
PHP
$array = array(
'income' => $income,
'expense' => $expense,
'recurring' => $recurring
);
echo json_encode($array);
JQUERY
var request = $.ajax({
type: "POST",
url: 'inc/functions.php',
dataType: "JSON",
data: {action: "display_categories", cur_month:cur_month}
});
request.done(function(response){
//for each element put values in <td></td> tags.
});
【问题讨论】:
-
您在哪里访问您的 json 响应?来自
.success()或.done()? -
向我们展示整个 ajax 调用,以及您使用的数据类型。
-
您是否在 jQuery AJAX 请求中将
dataType设置为'json'?如果没有,你可能有一个文本字符串而不是一个数组。 -
我进行了编辑以包含我的 AJAX 调用的其余部分。
-
尽管上面有您的 cmets,但您的 JSON 数据在 jsonlint.com 验证失败
标签: php jquery arrays json multidimensional-array