我想要设计一个网页,如下图所示。有三个面板(1,2,3)。如果我点击球队(面板1),那么面板2和3a将被填满。如果我然后点击一个特定的组(G1),那么面板3b将被填充。如果我然后点击特定动物(A1),则面板3c将被填满。这些数据是使用PHP从Oracle数据库中获取的。AJAX功能在同一页面显示动态数据
我是AJAX新手。你可以让我知道最好和有效的方式来做到这一点?
谢谢
圣
我想要设计一个网页,如下图所示。有三个面板(1,2,3)。如果我点击球队(面板1),那么面板2和3a将被填满。如果我然后点击一个特定的组(G1),那么面板3b将被填充。如果我然后点击特定动物(A1),则面板3c将被填满。这些数据是使用PHP从Oracle数据库中获取的。AJAX功能在同一页面显示动态数据
我是AJAX新手。你可以让我知道最好和有效的方式来做到这一点?
谢谢
圣
我强烈建议使用JavaScript框架,如jQuery为此。使用AJAX需要很多痛苦(请参阅http://api.jquery.com/jQuery.get/)。
有几个方法,你可以做检索数据:
最简单的方法是将产生 为(2) PHP脚本中,和HTML载入 整个表容器div
。 的缺点是,如果您想要更改 您的HTML模板,则必须更改PHP文件以更改 。
或者,你可以从你的PHP JSON格式( - http://www.php.net/manual/en/function.json-encode.php在PHP中使用 json_encode()
)回波数据 。 所以你会建立你的数组行 数据和做echo json_encode($data);
。您可以使用jQuery.get()将 加载为JSON。
完成之后,您需要 清除表格 (标题除外)的任何旧行并添加新的 。同样,jQuery将简化 这个过程,但是如果你没有太多经验的话,它并不容易。
正如我所说,第一种方法相当简单,因为它只需要相当基本的PHP和Javascript。第二种方法更清洁,更灵活,可能在带宽上更轻,但要困难得多。
填充3(a-c)本质上是同一个问题。您可以在PHP中生成整个内容并简单地设置容器HTML,或者在div
(但使用CSS:display:none;
隐藏)中包含基本HTML模板并填充该模板。
我不能在这里给你所有关于AJAX的基础知识,但是web服务器应该以像JSON这样的解析友好的方式返回数据。点击链接时,您需要使用'jQuery.ajax()'调用AJAX调用并适当地解析结果。 – pimvdb 2011-03-22 14:05:35