2011-03-26 46 views
0

好吧,所以我有一个页面,使用PHP函数与jQuery的功能。页面刷新后运行一个函数

jQuery的功能或简单的确认对话框和对话框。所以我现在需要的是当用户点击一个按钮时,我需要显示一个确认框。 然后当用户接受时,我运行一个以刷新页面结束的php函数,然后我想显示一个对话框来显示它已完成。

但现在发生的事情是,在确认对话框出现。当用户接受,该对话框开始出现再适合不过了,页面刷新...

这里是PHP函数这就是被调用,当用户点击OK从确认框:

function resetText() 
{ 
    $url = curPageURL(); 
    ?> 
    location.href='<?php echo"$url"; ?>' 
    message(); 
    <?php 
} 

感谢你的帮助。

+0

莫非你请发布您的完整代码? – Shoe 2011-03-26 19:02:14

回答

1

我想你可能会试图在这些设备不能被使用的方式来使用Web技术。该网站建立在客户端 - 服务器模型上;你的情况,PHP 只有在服务器上运行,和JavaScript(和jQuery)用户的网络浏览器运行。为了从JavaScript调用PHP,您必须以新的Web请求的形式进行操作。

你想动什么是你想要在PHP做不同的URL端点可以打电话,说,/callback.php,其中经过一番思想的回报是这样的:

{ 'myUrl': 'http://stackoverflow.com' } 

然后,你的jQuery将看起来像:

$('#myButton').click(function() 
{ 
    if (confirm('My confirmation message')) 
    { 
     $.ajax({ 
      type: 'get', 
      dataType: 'json', 
      url: '/callback.php', 
      success: function(result) 
      { 
       alert('You\'re about to go to ' + result.myUrl); 
       window.location.href = result.myUrl; 
      }, 
      error: function(request) 
      { 
       // handle somehow 
      } 
     }); 
    } 
}); 
+0

事实上,我现在意识到,我已经解释了你想要的东西。对于你想要的,你可能会想要添加一个查询字符串参数到用户最终的页面,如果参数在那里,请在alert框中添加一个

0

克林特是正确的 - PHP是服务器端,所以你必须通过Ajax调用运行功能。

尽管如此不过,如果可以为你工作,如果你想看到一个刷新弹出框,你可以进行刷新前再像做设置会话变量:

$(document).onReady(function(){ 
     if (isset(that session var)){ show that popup, remove session var } 
}); 
相关问题