我有三个相同的下拉列表,我使用MySQL数据填充它们。如果其中一个更改了索引(onchange被触发),我希望其他两个重新填充,以便它们排除使用另一个下拉列表选择的项目。
在ASP.NET中,我只需在后台代码中调用一个函数(传递所选项目的值)来重新填充其他两个项目。
我已经摸索了一段时间了,我就是不能用PHP完成它。PHP允许从此事件调用函数吗?我也尝试过使用AJAX,但一无所获。
发布于 2012-08-09 19:15:08
您不能(直接)从客户端调用服务器端函数。
您可以向URL发出HTTP请求,该URL运行调用函数的服务器端脚本。
ASP.NET有一些东西(我相信,我从来没有用过它)可以设置一个网址,并生成一些JavaScript来为你调用那个网址。
PHP核心中没有做这件事。
关于如何做这样的事情,一个非常粗略、快速和肮脏的大纲(不试图成为RESTful)将是:
callFunction.php:
<?php
include("myFunctions.php");
if ($_GET['call'] == "functionA") {
functionA();
}
?>然后,您的JS将向callFunction.php?call=functionA发出ajax请求。
发布于 2012-08-09 19:14:07
OnChange()是一个js函数,为了使用它来调用php函数,你必须使用AJAX。使用ajax,你将能够获得php的代码返回值,在页面中显示它,或者做任何你喜欢的操作。
祝好运
发布于 2012-08-09 19:13:32
当dropdown发生变化时,ASP.NET可能正在执行回发,尽管您不必显式地编写它。
如果你想在PHP中往返于服务器端,你必须实现相同的逻辑(例如,在onchange事件中使用JavaScript来post表单)。
对于使用AJAX来说,这也是一个很好的情况,但是您没有提供任何关于您尝试过什么或出了什么问题的详细信息,因此很难进一步提供帮助。
https://stackoverflow.com/questions/11882076
复制相似问题