如何根据从其他页面单击的链接填充页面内容


How to populate page content based on link clicked from another page?

我正在开发一个完全在灯箱中工作的动物数据库应用程序。我使用的是粒子树的灯箱。

我已经完成了所有的设计和导航,我只需要填写动物信息页面的数据。我在下拉菜单中有一个动物列表,用户可以从中点击一只动物。一旦用户点击这只动物,它就会把他们带到该动物的信息页面(都在灯箱内)。

当然,我可以将每只动物链接到一个单独的html页面,并在服务器上有50多个动物页面,但这不是很有效。我想做的是有一个带有div的html页面,一旦加载,就会用xml文件上的数据填充。

例如,如果用户单击"foxs",则空白的动物页面将加载并搜索xml中的"Foxs"数据,然后用内容填充页面。

以下是将带您进入动物信息页面的链接:

<a id="animal_link" href="birdExample.html" class="lbAction" rel="insert">Another Bird</a>

由于动物列表和实际的动物信息页面位于两个独立的html文件中,我会用什么代码将被点击的动物传递到另一个页面,以便它知道在xml文件中查找什么?

(我应该指出,我不是javascript或php方面的专家,但我更喜欢使用javascript来解决这个问题)。

您可以使用查询参数将数据从一个页面传递到另一个页面

<a href="animals.php?animal=bird" ... />

则animals.php可以访问"animal"参数

<div>
    Animal selected : <?php echo $_GET["animal"] ?>
</div>

如果您试图将参数传递给满足许多不同需求的通用HTML页面,那么通常的方法是使用查询参数。

一个查询参数被附加到URL的末尾,看起来像这样:

http://www.yourdomain.com?animal=coyote&location=Yellowstone

查询参数(问号后的部分)可以由服务器处理(以便根据这些参数更改页面中的内容),也可以由客户端javascript处理,以决定如何呈现页面或在其中放入哪些数据。如果您的服务器忽略了查询参数,则所有具有相同基本URL的URL,但是不同的查询参数将加载相同的基本HTML页面,然后客户端javascript可以决定如何为每个不同的参数集呈现页面。

然后,您可以将这些URL放入第一个页面上的链接中。他们将加载第二个页面,并根据点击的链接向第二个网页传递所需的数据