使用脚本更新下拉列表

时间:2012-12-30 19:53:12

标签: php jquery json

昨天我在这个论坛上问了一个关于如何根据另一个下拉列表更新HTML下拉列表(选择列表)的问题。不幸的是,某些用户并不清楚。但没问题,我发现它是如何工作的。 所以,让我们从脚本开始,我将其上传到pastebin:http://pastebin.com/sFhbPAFj

我的目标是什么?

在第一次下拉(讲师_id)中,我有一些讲师姓名和ID。此信息来自PostgreSQL数据库。例如,列表可以是一个选项:

X

第二个列表应包含讲座教授的课程。另一个例子:

数学

此信息也来自数据库,但它应该是动态的。如果我选择教师Y,则第二个列表应该是其他课程的更新。

问题是,我不知道如何将这些数据从我的PHP应用程序传输到上面的脚本,而另一方面,我不知道怎样才能将jQuery脚本中的讲座数转到我的脚本中PHP代码。 (我需要该ID用课程填充列表)

我希望这次我的问题很明确。

2 个答案:

答案 0 :(得分:2)

最好使用AJAX。类似的东西:

$("#teacher_select").change(function(){
id = $(this).val();
$.ajax({
              type: "GET",
              url: "some.php/?id=" + id, // perform a query for all courses taught by this teacher and return html
              success: function(data){
                           $("#course_select").html(data);
                           }
            });
});

您还可以返回一个json对象并在客户端转换为HTML(即在success函数中),在这种情况下不要忘记添加dataType:"json"

编辑:要在加载时检索第一个教师的课程,只需使用响应onload事件的相同ajax请求 - 或者在JQuery $(document).ready();中 - 这将获得当前的课程选定的老师

答案 1 :(得分:0)

您可以使用jQuery ajax函数以教师ID调用数据库以获取课程并更新第二个下拉列表。

为你所有的javascript提供用户jQuery。如果您使用for,则可以使用jQuery each