一次$.getJSON不执行的记录

别人的代码,拿过来调,发现修改功能都不能用,修改时通过ajax发json获取数据的,看chrome开发者工具发现有发送数据,也有返回值;

 

发起请求并获取数据,发现回调函数不执行!

$.getJSON(site_url+'?m=test&a=getOne',{id:id},function(d){
    if(d.status){
        vardata=d.data;
        $('input[name="id"]').val(data.id);
        $('input[name="name"]').val(data.name);
    }else{
        Message.fairue(d.info);
        setTimeout(function(){
            // todo
        },2000);
    }
});

php返回数据代码:

if($findOne){
    $this->ajaxReturn($findOne,'success',true);
}else{
    $this->ajaxReturn($findOne,'faild',false);
}

返回的数据在浏览器里看上去也很正常:

{"data":{"id":"1","name":"admin",},"info":"success","status":true}

 

调了半天。。。

 

有人说是json格式的问题,有人说是参数的问题,本人js也不熟,排查后一一排除。。。

将浏览器返回json数据粘贴到vim时发现:

<feff>{"data":{"id":"1","name":"admin",},"info":"success","status":true}

<feff> ??? bomb。。。

 

附:vi bomb操作:

#添加BOM
:set bomb
#删除BOM
:set nobomb
#查询BOM
:set bomb?

    查找当前目录下所有含有bomb的文件:

grep -I -r -l $'\xEF\xBB\xBF' ./

 

最后发现是 /Conf/config.php 有bomb,修改之。。。

项目框架:ThinkPHP

出自:http://www.cnblogs.com/dwj192/ 欢迎转载

 

posted @ 2016-07-19 08:55  河在谈  阅读(1425)  评论(0编辑  收藏  举报