我的网页上有两个下拉菜单。一个是课程列表,另一个是学生列表。我想要做的是,当在课程菜单中进行选择时,它将更新学生菜单,使其仅列出该课程中的学生。
所有课程和学生数据都保存在MySQL数据库中。检索我想要的结果的SQL语句不是问题。我已经把它们弄清楚了。问题是,我不知道如何在不使用提交按钮的情况下让一个下拉菜单更新另一个。有没有办法让课程菜单在发生变化时调用php函数,从而更新学生菜单?
我看过几个类似的问题,但当第二个菜单更新时,许多问题最终重置了第一个菜单。我需要在最后的页面上打印选定的课程和学生。
这是可以用PHP完成的吗,还是Javascript更可取?如果有人能给他们指出正确的方向,那将不胜感激。
发布于 2014-04-03 07:40:37
有没有办法让课程菜单在发生变化时调用php函数,从而更新学生菜单?
是。最流行的说法是AJAX。
您最终将同时使用JavaScript和PHP来完成此操作。实际的实现相当复杂,所以我将为您列出基本步骤。
change事件,捕获所选课程并将一个XMLHttpRequest连同所选课程一起发送到您的服务器。echo、print、etc).发布于 2014-04-03 07:41:03
一般的方法是使用jQuery向下拉选择器添加一个钩子,并在页面的另一个部分触发AJAX加载,用作为HTML片段(easy)或JSON数据(更难)检索的数据填充该页面。
一种非常快速而粗糙的方法是抓取页面的一部分,然后使用$.load()重新填充当前文档
$('#select1').on('change', function() {
$('#select2').load('select.php #select2', 'select1=' + $(this).val())
})这就是粗略的想法:当您的第一个选择框更改时,加载select.php页面或您正在使用的任何内容,并添加参数select=N,其中N是选定的值。然后,它删除#select2部分并替换它。
https://stackoverflow.com/questions/22824964
复制相似问题