我如何在PHP中创建一个动态下拉框?

时间:2010-05-29 15:24:09

标签: php javascript

我需要在一个php文件中有三个下拉框或多个选择框。

这些框中的条目位于mysql数据库中。

单个问题是thrid框中的条目取决于第二个,第二个条目取决于第一个条目。

有人可以帮忙吗?知道任何例子吗?

2 个答案:

答案 0 :(得分:3)

基本上有3种方法可以达到这个目的:

  1. 在下拉列表的submit()期间,使用JavaScript将onchange表单发送到服务器端,让PHP加载选项并根据所选的下拉列值相应地呈现子下拉列表。从技术上讲,这是最简单的方式,但也是最不方便用户的方式。您可能还想恢复表单的所有其他输入值。

  2. 让PHP填充JavaScript数组中所有可能的子下拉列表值,并使用JavaScript函数填充并显示子下拉列表。有点棘手,当然如果你还不了解JavaScript,但这更加用户友好。唯一需要注意的是,当您拥有相对较多的下拉项时,带宽和内存效率低下。想象一下三个下拉菜单,每个下拉菜单可容纳100个项目,这意味着一个100 * 100 * 100 = 100万个项目的JS数组。该页面的大小可能会超过1MB。

  3. 让JavaScript向服务器端发出异步(ajaxical)HTTP请求,并相应地填充并显示子下拉列表。结合了最佳选项1和2.高效且用户友好。 jQuery在这方面非常有用,因为它消除了关于激发ajaxical请求和遍历HTML DOM树的crossbrowser兼容性问题。否则,最终会得到实现此目的所需的双倍,三倍甚至更多代码。


  4. 如果您在评论或更新问题时知道您希望采用哪种方式,以及在实施解决方案时您到底在哪里,那么我可能会更新答案以包含基本的启动示例。

答案 1 :(得分:0)

我来自葡萄牙,所以,我们这样做是基于葡萄牙语,从来没有那么少,我们用你想要的东西制作了许多有用的网站和平台,请查看此链接......

如果这是你想要的,我可以发给你代码:

  

http://www.medipedia.pt/home/home.php?module=farmacia