繁体   English   中英

从链接运行php代码而无需重定向

[英]running a php code from a link without redirection

当用户单击给定链接时,我想执行一个php代码,我已经尝试了以下代码

<!DOCTYPE html>
<html>
<head>

 <script type="text/javascript" src="jquery.min.js"></script>
 <script type="text/javascript">
 function doSomething() {
 $.get("up.php");
 return false;
 }
</script>


  </head>

  <body>

  <center>
  <a href="#" onclick="doSomething();">Click Me!</a>


   </center>

   </body>
  </html>

其中up.php是实现类似于该链接中的android GCM机制的php代码: 带PHP的GCM(Google云消息传递)

但是不幸的是,当单击链接时,什么也没有发生,没有执行php代码,只有页面的URL形式从*****。com / test.html更改为*****。com / test.html#,顺便说一下,我已经测试了php代码,它的工作原理很好,所以这不是php代码中的问题,所以我在这里错过了什么? 为什么代码没有执行?

我找到了解决方案,我的代码中可能未包含jquery库的问题

有时,您可能需要从链接中调用一些JavaScript。 通常,当用户单击链接时,浏览器将加载新页面(或刷新同一页面)。

这可能并不总是令人满意的。 例如,您可能只想在用户单击链接时动态更新表单字段。

为了防止负载刷新,可以使用JavaScript void()函数并按如下所示传递参数0(零)。

<a href="JavaScript:void(0);" onclick="return doSomething(); " />Click Me!</a>

现在,如果要使用href =“#”,请确保onclick始终包含return false; 在末尾。

要么

使用href="javascript:void(0)"

您正在使用jquery。 $ .get()将如下所示。

$.get('ajax/test.html', function(data) {
 $('.result').html(data);
 alert('Load was performed.');
});

如需更多帮助,请访问http://api.jquery.com/jQuery.get/

您还可以使用jQuery Load

function doSomething() {
$('#result').load('up.php', function() {
  alert('Load was performed.');
});
}

当您使用Jquery时应为:

function doSomething(){
    $.get('up.php', function(data) {
        $('.data').html(data);
    });
}

链接

要停止页面刷新,可以使用javascript void()函数并传递参数0。

<a href="javascript:void(0);" onclick="return doSomething();">Click Me!</a>

<div class="data"></div>

该div用于显示up.php结果。

首先,使用Fire Bug,观察控制台和网络面板,确保浏览器尝试获取内容,并且在获取时未返回404或php错误

调查防止默认http://api.jquery.com/event.preventDefault/停止原始链接功能的工作

如果您仍然希望他们移动到链接,请使用窗口位置或...

查看引导链接按钮

http://twitter.github.com/bootstrap/base-css.html#buttons (链接按钮)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM