jQuery:如何将超链接加载为 $.get 回调?

标签 jquery hyperlink

如何延迟加载 anchor 链接,直到 $.get 请求发出后?我有

$("a.track").click(function() {
    $.get("track.php", { id: "page1.html" });
});

...但是单击链接会在上述请求完成之前加载新页面(我在 PHP 页面上的响应未记录)。如果我使用 return false; 停止链接,$.get 请求将按预期工作,但现在链接不会加载。

我想做的是类似的事情

$.get("track.php", { id: "page1.html" }, function() {
    return true;
});

...但是新页面会在执行之前加载,因此它无法按预期工作。

如何才能使此链接仅在发送 GET 请求后才加载?我并不真正关心从请求中获取结果,我只想在新页面加载之前发送它。

最佳答案

您可以向点击处理程序传递一个回调,该回调将在成功时重定向页面。

$("a.track").click(function(event) {
  event.preventDefault(); // Ignore user's click
  var href = $(this).attr('href');
  $.get("track.php", { id: "page1.html" }, function(data){
    window.location = href; // Redirect on success
  });
});

关于jQuery:如何将超链接加载为 $.get 回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/674581/

相关文章:

javascript - 单击时元素文本内容不会更改

jquery - iphone jquery 移动闪烁问题

css 链接按钮选择的颜色

javascript - 默认情况下将链接设置为事件

javascript - 我怎样才能获得点击的链接href?

django - 运行ajax在点击 anchor 时删除一条记录

php - 如何使用 "favorite"按钮的 php/mysql 将 POST jquery ajax 调用发送到服务器?

javascript - 如何在按钮上添加 60 秒后自动点击功能并使用 JavaScript 执行该操作?

html - 如何获取图像或链接以显示在 Oracle APEX 交互式报告中?

html - 如何使整个 div 成为一个链接,但里面还有其他链接?