Php Ajax请求冻结网页

Php Ajax请求冻结网页,php,javascript,ajax,google-chrome,Php,Javascript,Ajax,Google Chrome,我正在尝试创建一种在我的网页中调用ajax请求的通用方法。我创建了一个很好的小扩展方法来异步调用post请求 $.tiqPost = function(action,data,callback) { alert('Posting...'); $.fancybox.showActivity(); $.ajaxSetup({async:true}); $.post('/portfolios/mod/t:'+action+'/',data,function(respon

我正在尝试创建一种在我的网页中调用ajax请求的通用方法。我创建了一个很好的小扩展方法来异步调用post请求

$.tiqPost = function(action,data,callback)
{
    alert('Posting...');
    $.fancybox.showActivity();
    $.ajaxSetup({async:true});
    $.post('/portfolios/mod/t:'+action+'/',data,function(response)
    {
        callback(response);
        $.fancybox.hideActivity();
        alert('Finished Post.');
    });
    alert('Posting Set.');
}
然而,每当这个请求触发时,我的页面就会无限期地冻结。在Chrome的某些版本中,它会冻结而没有反馈(单击停止工作,我无法关闭选项卡)。不过,它在大多数其他浏览器中都会显示“发布”,然后在没有到达“发布集”或“完成发布”的情况下停止

所以Chrome不会捕捉错误,只是冻结。这让我很困惑。有人有什么建议吗(甚至只是一个不同的实现)

编辑:

并非每个请求都会发生这种情况。事实上,让我来发布一些它有效的案例和一些不起作用的案例。等一下

编辑:

所以在这个例子中

$.tiqPost('newcat',{t:"n"},function(response)
                {
                    if(response)
                    {
                        $tabs.tabs('add','#tiq-tab-'+response,"New Category",0);
                    }
                });
我没有问题。然而:

$(this).bind('blur',function(postdata)
    {
        //blur
        if(postdata==null)
            postdata = {value:$(this).text()};
        $.tiqPost($(this).attr('id').replace('tiq-submit-',''),
            postdata,
            function (response) {
                $(this).text(response);
            });
        $(this).removeClass('tiq-editable-editstate');
        $(this).attr('contentEditable','false');
    });
导致冻结。

执行以下操作

$.post('/portfolios/mod/t:'+action+'/',data,function(response)
    {
        callback(response);
        alert('Finished Post.');
    });
一个人,工作吗?
如果是这样,那么您可能会在配置函数本身时遇到问题

如果您完全忽略“ajaxSetup”会发生什么?能否显示
回调()中的内容
?这应该是一个注释而不是答案。它没有回答这个问题。