通过ajax调用php文件无法正常工作
这似乎是一个相对简单的问题,我对使用ajax很新,但我看到一篇关于在触发OnClick事件时能够调用PHP脚本的post。 我试图在用户单击“注销”链接时销毁会话,因此我想在OnClick事件发生时调用logout.php
文件。 我的问题是单击链接时没有任何反应。
这是我的代码:
$(document).ready(function() { // Expand Panel $("#open").click(function(){ //when the user clicks the logout button $.ajax({ url: "logout.php" )}; }); }); -
- |
- Log Out
-
我想您希望显示logout.php文件的输出。 我认为你的代码可能正常工作,但你忘了告诉ajax把它收到的数据放在哪里。
尝试这样的事情:
$.ajax({ url: 'logout.php', success: function(data) { $('.result').html(data); alert('Logout completed.'); } });
“结果”指向要加载响应的div的位置。
使用$ .ajax与单击常规链接不同。 $ .ajax不会“跟随”该链接,它会将该链接中的数据加载到文档中而不刷新页面。
您需要做的是在logout.php文件中执行您想要的操作,然后发送有关注销是否成功的信息。 您可以通过输出HTML,XML或JSON来执行此操作,您可以在javascript代码中检查并采取适当的操作(重定向用户,锁定UI等)。
试着这样做:
$(document).ready(function() { alert('loaded!') // Expand Panel $("#open").click(function(){ //when the user clicks the logout button $.ajax({ url: "logout.php" )}; alert('clicked!') }); });
如果这显示一个弹出的说法点击! 然后事件被触发。 告诉我发生了什么,以便我们可以将其缩小到$ .ajax失败或点击事件未被触发。
如果您正在使用firebug,那么您可以转到控制台面板并检查XmlHttpRequests以密切查看从远程脚本返回的任何响应,如果您已从脚本发回任何响应。