首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >json多维数组和jquery?

json多维数组和jquery?
EN

Stack Overflow用户
提问于 2010-11-20 22:53:32
回答 3查看 408关注 0票数 1

我用PHP创建了这个输出:

foreach ($bk as $blink) { $out"url“= $blink->url;$out”锚“=$blink->$out;} $json = Zend_Json::encode($out);回声($json);

我想通过一个$.ajax调用来接收和处理输出。

您能给我介绍一个关于使用javascript/jquery的多维数组的好教程吗?或者可以帮我循环一下json结果吗?我有点糊涂了。

  • 我正在尝试把这些放在桌子上,所以我将使用<td>url-i</td><td>anchor-i</td>。这部分我想出了办法。在url-ianchor-i上放置正确的值是问题所在。
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-11-20 23:09:36

我可以想象,用于该操作的JSON输出将类似于:

代码语言:javascript
运行
复制
{'url': ['url1', 'url2', ... ],
 'anchor': ['anchor1', 'anchor2', ... ]}

如果是这样的话,那么它们将具有相同的长度(重要的是相同的索引),您可以使用jQuery.each()循环两种方法中的一种。

代码语言:javascript
运行
复制
$.getJSON('jsonapp.php', function(data) {
  $.each(data.url, function(index, url) {
    var anchor = data.anchor[index];
    $('#mytable').append('<tr><td>' + url + '</td><td>' + anchor +'</td></tr>');
  });
});

我没有运行这段代码,所以它可能有一些缺陷,但这是它的要点。

票数 1
EN

Stack Overflow用户

发布于 2010-11-20 23:22:21

PHP可以自己尝试将对象转换为数组,对于简单的东西,它通常工作得很好。

至于多维数组,Javascript与大多数其他高级编程/脚本语言在数组方面并没有太大的不同。实际上,任何关于多维数组的在线教程都会做得很好。多维数组只是数组的数组。

当您接收到字符串客户端时,您只想解析它。jQuery有它自己的方法,但您可以使用JSON.parse。之后,根据如何设置数组,您可能希望这样做。

代码语言:javascript
运行
复制
<? $count = count($json_parsed['url']); for($i = 1; $i < $count; $i++) : ?>
<td><?=$json_parsed['url'][$i];?></td>
<td><?=$json_parsed['anchor'][$i];?></td>
<? endfor; ?>

不过,这在哲学上可能不是最好的方法。如果您有大量的对象,并且想要用这些对象创建一个表,最好的方法是创建一个由关联数组表示的对象数组(类似于其他编程语言中的哈希表)。PHP本机尝试将对象转换为关联数组。如果Zend_Json::encode自动这么做,我就不会感到惊讶了。如果是这样的话,您可能想简单地拉:

代码语言:javascript
运行
复制
echo Zend_Json::encode($bk);

如果没有,请告诉我,我们会讨论如何做到这一点。

票数 1
EN

Stack Overflow用户

发布于 2010-11-20 23:12:48

您可以查看任何模板框架,但对于这种情况,检查这两种框架中的一种非常有用:纯贝贝jquery纯html模板

自己动手可能很有诱惑力,但为什么要重新发明这个好东西呢?我从我的经验中知道,框架比自己编写的代码快2倍左右。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4235436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档