无法在 Zend 中将 JSON 格式的关联数组发送到客户端

发布于 2024-10-18 02:43:52 字数 500 浏览 2 评论 0原文

在控制器中的一项操作中,我使用 json 视图助手发送回对 ajax 请求的响应。在客户端,我警告传递给成功回调函数的数据。只要响应是数字或具有默认键的数组,它就可以正常工作。一旦我尝试发送关联数组,它就会发出 [object Object] 警报。 服务器代码:

$childArray = array('key'=>'value');
$this->_helper->json($childArray);

javascript:

function displayChildren(data){
    alert(data);
}
...    
$.ajax({
        url: "/po/add", dataType: "json",
    data: {format: "json"}, success: displayChildren
});

我不知道我在这里做错了什么,所以任何帮助将不胜感激......

In one of my actions in a controller, I'm using the json view helper to send back a response to an ajax request. On the client side I alert the data that is passed to the success callback function. It works fine as long as the response is a number or an array with default keys. Once I try to send an associative array, it alerts with [object Object].
Server code:

$childArray = array('key'=>'value');
$this->_helper->json($childArray);

javascript:

function displayChildren(data){
    alert(data);
}
...    
$.ajax({
        url: "/po/add", dataType: "json",
    data: {format: "json"}, success: displayChildren
});

I have no idea what am I doing wrong here, so any help would be appreciated...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

单身狗的梦 2024-10-25 02:43:52

这是预期的。 JavaScript 中的关联数组是对象。 Alert 不会迭代对象的属性,只会输出 [object Object]。您在 PHP 端设置的键/值对就在那里并且可以被访问。尝试alert(data.key),您应该获得value

That's expected. Associative arrays in Javascript are objects. Alert won't iterative over the object's properties and just outputs [object Object]. The key/value pairs you set on the PHP side are there and be accessed. try alert(data.key) and you should get value.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文