jQuery ajax post请求不';不要突然工作,

jQuery ajax post请求不';不要突然工作,,ajax,jquery,zend-framework2,Ajax,Jquery,Zend Framework2,我在ZF2应用程序中有一个jQuery ajax调用。它以前就起作用了。突然间,它就不起作用了。即使我在请求中放置了一个不存在的操作,它也不会像以前那样给出服务器错误。看起来好像它没有提出要求 控制台中绝对没有错误。在我提出请求之前,一切都正常。这就是它的功能: $('.expand').click(function(){ var CCID = $(this).parent().attr('id'); CCID = parseInt(CCID); console.log

我在ZF2应用程序中有一个jQuery ajax调用。它以前就起作用了。突然间,它就不起作用了。即使我在请求中放置了一个不存在的操作,它也不会像以前那样给出服务器错误。看起来好像它没有提出要求

控制台中绝对没有错误。在我提出请求之前,一切都正常。这就是它的功能:

$('.expand').click(function(){
    var CCID = $(this).parent().attr('id');
    CCID = parseInt(CCID);

    console.log(CCID);                                   // Works

    if($.inArray(CCID,$expanded) > -1){
        foldin(CCID);
    } else {
        console.log('Works up to here.');                // Works
        $.post('admin/expand', {
            id: CCID
        },function(data){
            console.log('Doesn\'t log this.');           // Doesn't work
            if(data.hasOwnProperty('info')){     
                console.log('sup');
                expand(data.info);
            } else {
                console.log('Can\'t find customer info.');
            }
        },'json'); 
    }
});
就像我之前说的,绝对没有错误,并且记录了我评论过的所有错误。希望我犯了个愚蠢的错误,你能发现。已经检查过很多次了,找不到

如果有人想查看该操作,我会在我的控制器中添加该操作,但是post请求似乎甚至没有查找它,因为如果我给它一个伪操作,它不会给出错误

编辑:下面是一些额外信息

因此,我应评论员的请求添加了一个失败处理程序,它返回:

failed [Object, "parseerror", SyntaxError]

在SyntaxError中,它说“意外令牌Arun p Johny教我使用Google Chrome开发者工具中的网络选项卡来解决问题。从那里我可以看到路径“admin/expand”应该是“expand”


这可能是一个本地化的答案,但我觉得他关于使用网络选项卡的建议非常有用,足以证明答案是正确的。也许在某个时候它对其他人会有帮助。

尝试添加一个失败处理程序,看看它是否被调用
$.post('admin/expand',{..},function(){})。fail(function(){console.log('failed',arguments)}
你能澄清几件事吗:1)“突然它不再工作了”:它以前工作过吗,你改变了什么,你说“不工作”是什么意思?2)你发送了什么请求(在Chrome/Firefox中检查检查程序)3)您得到的响应是什么,状态代码是什么?@ArunPJohny-Wow,以前不知道。这肯定返回了一些信息。
falied[Object,“parseerror”,SyntaxError]
SyntaxError是查看的最佳地方吗?它有点大,让人望而生畏。在进行ajax调用时,请尝试在web浏览器中查看控制台日志。可能是ajax调用失败,或者是响应有问题。在这种情况下,最好的工具是使用FireFox的firebug或Chrome的developer tools,并在中使用“网络”选项卡这些工具用于评估ajax请求和响应属性
public function expandAction(){
    $request = $this->getRequest();
    $response = $this->getResponse();

    if($request->isPost()){ 
        $post_data = $request->getPost();
        $CCID = $post_data['id'];
        $customer = $this->getCustomerTable()->getCustomer($CCID);
        $response->setContent(\Zend\Json\Json::encode(array(
            'info'      => $customer,
        )));    
    }

    return $response;
}