ajax async: false 无效

$("#search").click(function() {
$.ajax({
cache: true,
type: "POST",
dataType:'json',
url:'XXXX',
data:$('#formId').serialize(),
async: false,
success: function(data) {
}
});
$("#cover").hide();
});
明明设置了同步,可是为什么ajax还没执行完,最后那个就隐藏了,那个大神知道

应该不会有问题,同步的话,ajax一般是在success返回数据后,再执行ajax下方的代码,可以   在success函数中添加一个
alert('success');如果提示后再隐藏,那么就没有问题,如果没有提示就隐藏了,那么检查一下请求处理函数是否有问题,
如果最后还是没能找到原因,可以把$("#cover").hide();这句代码移动到success函数中去就可以了

你的search是放在表单中的submit按钮?表单提交了吧。。阻止表单提交试试

$("#cover").hide();
return false;/////////
});

而且没特殊的必要不要用同步

不知道为什么在隐藏之前加上alert就好用,去掉alert就不好用。哪位大神来解释解释