我正在使用jquery 1.9几个月,当用户点击链接时,我使用jQuery进行$.ajax
。
实际上,当用户点击该链接时,会在下一页加载(长时间加载)时执行ajax查询。这曾经与Chrome和IE 9下的async: false
完美配合。
但我已将Chrome更新到两周前的最新版本,这不再适用(ajax未加载,但下一页出现)。但它仍然可以在IE下运行。
编辑这里是我的代码$ .ajax:
function doOnClick(id) {
$.ajax({
dataType: "json",
url: 'http://...",
async: false,
data: { id : id }
}).success(function(data) {
//do some stuff
}).fail(function(){
//do some stuff
});
}
和我的链接:
<a href="http://..." onclick="doOnClick(1);">link</a>
我的JS控制台没有错误。
答案 0 :(得分:-1)
使用异步请求,设置选项上下文:
$('.someLinks').on('click', function (e) {
e.preventDefault();
$.ajax({
dataType: "json",
url: url,
data: param,
context: this
}).success(function (data) {
//do some stuff
}).fail(function () {
//do some stuff
}).always(function () {
this.click(); // call native click method // NOTE: don't use here: $(this).click();
});
});