【发布时间】:2011-01-17 01:52:02
【问题描述】:
我有以下 javascript 代码:
$.get("categories/json_get_cities/" + stateId, function(result)
{
//code here
}, 'json'
);
处理它的 PHP 代码基本上输出如下内容:
function json_get_cities($stateId)
{
//code here
echo json_encode(array('cities'=>$cities));
}
在 firebug 控制台中,我可以看到 ajax 请求正在按预期发出,收到 200 OK 响应,并返回了一个包含城市的看似正确的 JSON 对象。但是由于某种原因,我传递给 jquery 的回调函数没有被调用。
甚至在函数顶部调用debugger,即
$.get("categories/json_get_cities/" + stateId, function(result)
{
debugger;
//code here
}, 'json'
);
不起作用。但是,如果我删除 'json' 的第三个参数,然后调用该函数(但响应文本被视为纯文本而不是 JSON 对象)。
这是服务器返回的 JSON 响应:
{"cities":[{"id":"1613","stateId":"5","name":"Acton"}]}
有什么想法吗?
【问题讨论】:
-
该死的。与您相同的问题,但使用的是最新的 Chrome。 Edge 很好,JSON 有效。
标签: javascript jquery ajax json