使用php识别单击了哪个按钮

使用php识别单击了哪个按钮,php,javascript,jquery,mysql,css,Php,Javascript,Jquery,Mysql,Css,我正在为一家制作公司制作一个小网站,当用户从我的菜单中点击一位导演的名字时,所有菜单项都消失了,显示的只是该导演的传记和作品 我遇到的问题是,我不知道如何将负责标识单击哪个控制器的javascript变量传递给php,以便它能够从数据库中实际检索控制器的信息。。。有没有一种方法可以不用GET或POST来实现这一点,因为我正试图在一个页面到另一页面的无缝动画中维护它 为了澄清,我想在一个页面中包含所有这些内容,没有任何中间页面可能有各种基于脚本的解决方案,但也可以不用脚本完成 使用具有多个提交按钮

我正在为一家制作公司制作一个小网站,当用户从我的菜单中点击一位导演的名字时,所有菜单项都消失了,显示的只是该导演的传记和作品

我遇到的问题是,我不知道如何将负责标识单击哪个控制器的javascript变量传递给php,以便它能够从数据库中实际检索控制器的信息。。。有没有一种方法可以不用GET或POST来实现这一点,因为我正试图在一个页面到另一页面的无缝动画中维护它


为了澄清,我想在一个页面中包含所有这些内容,没有任何中间页面

可能有各种基于脚本的解决方案,但也可以不用脚本完成

使用具有多个提交按钮的表单。给每个人一个唯一的名字,只有被点击的那一个会和表单一起提交

您还可以将每个控制器的所有信息加载到页面中,只显示单击的控制器的信息,而无需单独调用服务器


或者,您可以使用AJAX请求。在请求中使用单击按钮的唯一标识符(例如,其名称、id或类),以便返回适当的信息。但与普通表单或仅显示或隐藏页面中已有的元素相比,此类功能需要更多的工作,更容易出错。

您应该使用AJAX来实现这一点。虽然从技术上讲,您仍然可以传递GET或POST变量,但这将是无缝的。

我认为RobG建议一次加载所有数据,然后使用JavaScript隐藏/显示您想要的内容,这是本例的方法

假设你有3个导演,你给他们每人一个“div”,包含他们的简历和工作,每个div都有一个id='dir1','dir2','dir3'。它们都有一个名为“directorInfo”的类,当页面第一次使用属性style='display:none'加载时,它们是隐藏的。将有三个按钮对应于每个名为“but1”、“but2”、“but3”的控制器,每个按钮的值分别为1、2或3,我还将为每个按钮指定一个class='directorButtons',以便更容易通过JQuery识别它们

使用JQ,将按钮绑定到单击事件。像这样:

$('.directorButtons')。在('click',function(){
$('.directorInfo').hide();
$(“#菜单项”).hide();
$('#dir'+this.val()).show();
返回false;
});
$('.close')。在(“单击”,function(){
//为用户提供取消隐藏菜单的方法。
$('.directorInfo').hide();
$(“#菜单项”).show();
返回false;
});

代码的第二部分是因为每个div还应该有一个close按钮,或者在href='#'和class='close'的'a'标记中有一个X,这样当用户单击X时,它们将返回到开始位置,菜单将再次可见


这是一个简单的例子,你可以做很多调整(比如使用模态和动画)。通过这种方式而不是使用AJAX,还可以提供即时响应的额外好处,而不是等待服务器的响应。

是的,我考虑过AJAX,但上次我这么做时,由于缺乏经验,导致代码混乱不堪。。。我也考虑过一次加载所有的文件,但我担心的是访问者的加载时间。不过,在这种情况下,这可能是最好的解决方案。