当网站上的某人单击链接时,我需要向服务器进行异步发布.我尝试了下面的代码,但似乎并没有在我想要的服务器上执行任务.我认为问题在于,链接可能会在链接发生之前发生.我实际上不需要等待服务器的响应,我只需要它即可将调用发送给它.谁能帮我吗?也许如何在链接被调用之前延迟跟踪链接,或者应该使用$.post进行记录?
$("#item").click(function (ev) {
$.post(link_to_something);
});
<a id="item" href="www.google.com">Link</a>
解决方法:
第一件事是通过从单击处理程序返回false来取消链接的默认操作.这将有足够的时间来完成AJAX请求.完成后,在成功回调中,您可以重定向到链接指向的任何位置:
$("#item").click(function (ev) {
var self = this;
$.post(link_to_something, function() {
window.location.href = self.href;
});
return false;
});