【问题标题】:How to do an onclick ajax call to a php file, with jquery?如何使用 jquery 对 php 文件进行 onclick ajax 调用?
【发布时间】:2010-03-22 23:50:26
【问题描述】:

我有一个链接,它链接到 domain.com ,当有人点击时,我希望它对 counter.php 进行 ajax 调用并向其发布 2 个变量,因此它可以在该链接的视图中添加 1 .

我有一个链接:

<a href="http://www.domain.com" onClick="addHit('12345', '1')" rel="nofollow" target="_blank">Link Title</a>

我将如何使用 jquery 做到这一点?

编辑:

我试过这样的

function addHit(str, partNumber){
$.get("counter.php", { version: str, part: partNumber })                
}

它似乎工作,但在萤火虫中,请求永远不会完成......它只是做那个“工作......”动画。 counter.php 完成后会回显一些文本(不需要出现在任何地方)。

【问题讨论】:

    标签: php jquery ajax onclick


    【解决方案1】:

    来自 jQuery 文档:http://api.jquery.com/jQuery.ajax/

    function addHit(data1, data2)
    {
        $.ajax({
           type: "POST",
           url: "http://domain.com/counter.php",
           data: "var1=data1&var2=data2",
           success: function(msg){
             alert( "Data Saved: " + msg ); //Anything you want
           }
         });
    }
    

    【讨论】:

    • 我正在通过萤火虫查看这个,它从不“完成”请求,它只是有一个工作......动画,就好像它挂起一样。
    • 尝试直接访问您的 PHP 并查看结果。
    【解决方案2】:

    您需要在成功时添加回调

    function addHit(str, partNumber){
    $.get(
    "counter.php", 
    { 
     version: str, 
     part: partNumber 
    },
    function(data){
       alert("Data Loaded: " + data);
     })
    )};
    

    【讨论】:

    • 有一个成功回调,并且有效。然而它仍在跳着旋转舞。
    • 嗯,我已经在我的机器上试过了,代码和 Firebug 可以工作。我似乎无法重现您的超时错误。
    【解决方案3】:

    在锚点的情况下,您将离开页面,因此 firebug 会在这里显示一些奇怪的行为,因为它认为执行会停止。除非您还阻止了锚点的默认事件行为...您将离开页面并且请求(在萤火虫的视图中)被丢弃。

    【讨论】:

      猜你喜欢
      • 2012-11-30
      • 1970-01-01
      • 1970-01-01
      • 2014-02-21
      • 2016-07-22
      • 2013-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多