如何在“onchange”事件被触发时调用PHP函数?

时间:2012-08-09 11:09:00

标签: php mysql ajax

我是PHP的新手,所以请光临我。

基本上,我得到的是三个相同的下拉列表,我正在使用MySQL数据填充。 如果其中一个更改了索引(onchange被触发),我希望其他两个重新填充,以便它们排除使用另一个下拉列表选择的项目。

在ASP.NET中,我只是在后面的代码中调用一个函数(传递所选项的值)来重新填充其他两个。

我一直在寻找一段时间,我无法用PHP完成它。 PHP允许从此事件调用函数吗?我也试过使用AJAX,但没有。

非常感谢任何示例代码。

3 个答案:

答案 0 :(得分:1)

OnChange()是一个js函数,为了使用它调用php函数你必须使用AJAX。使用ajax,你将能够获得php的代码返回值,在页面中显示它,或者做任何你喜欢的操作。

祝你好运

答案 1 :(得分:1)

您不能(直接)从客户端调用服务器端功能。

您可以向运行调用该函数的服务器端脚本的URL发出HTTP请求。

ASP.NET(我相信,我从未使用过它)会设置一个URL并生成一些可以为你调用该URL的JavaScript。

PHP核心中没有任何内容可以做到这一点。

一个非常粗略,快速和肮脏的轮廓(不会试图成为RESTful)你将如何做这样的事情:

 callFunction.php:
 <?php
     include("myFunctions.php");
     if ($_GET['call'] == "functionA") {
         functionA();
     }
 ?>

然后你的JS会向callFunction.php?call=functionA发出ajax请求。

答案 2 :(得分:0)

当下拉列表发生更改时,ASP.NET本来会进行回发,尽管您不必明确地写下它。

如果您想在PHP中往返服务器,则必须实现相同的逻辑(例如,在onchange事件中使用JavaScript发布表单。)

这也是使用AJAX的一个很好的情况,但是你没有提供任何你尝试过或者出错的细节,所以很难进一步帮助。