0

关于为什么以下代码在使用 FF 时完美“发布”(我可以看到数据库已更新)但在 Chrome 上失败的任何想法?

    $("a").click(function() {
$.post("ajax/update_count.php",  {site: 'http://mysite.com'});
     }); 

提示:jQuery 版本是jquery-1.4.3.min.js

更新

问题似乎是,当点击链接时,会加载一个新页面,这似乎正在停止 Chrome 中的帖子......这是一个可能的解释吗?如果是这样,我该怎么办?

4

1 回答 1

4

您需要防止<a>. 用这个:

$("a").click(function (e) {
    e.preventDefault();
    // Your code
});

或者,如果您确实希望链接加载新页面,您可以尝试:

$("a").click(function (e) {
    e.preventDefault();
    var href = this.href;
    // Might want to put a "loading" spinner on the page here
    $.post("whatever", {}, function () {
        window.location.href = href;
    });
});

可能需要稍微改变一下 - 也许使用$(this).attr("href")or $(this).prop("href"),而不是this.href......那些评估的差异可能会或可能不会起作用window.location.href(我相信两者都可以)。

于 2012-10-12T23:55:37.033 回答