php返回代码格式

public function json(){

        if (request()->isAjax()){
            $data = [
                \'code\'=>\'1\',
                \'msg\'=>\'成功\',
                \'data\'=>array(\'1\'=>\'1\',\'2\'=>\'2\'),
            ];
            return json_encode($data,JSON_UNESCAPED_UNICODE);
        }
        return view(\'json\');
    }

ajax请求

//监听提交
form.on(\'submit(upd)\',function(data) {
    //console.log(data);
    //发异步,把数据提交给php
    $.ajax({
      url:"{:url(\'json\')}",
      type:"post",
      data:{},
      jsonType:"json",
      success:function(a){
        // var movie =eval("(" +a +")");
        eval("var movie = " +a);
        console.log(movie);
      },
      error:function(e){
            layer.alert("系统错误,请刷新页面后重新修改", {
                icon: 7
            },
            function() {
                //关闭当前窗口
                layer.close(layer.index);
                //刷新页面
                window.parent.location.reload();
            }); 
        }
    })
    return false;
});

打印结果

 

 

 

 

主要是eval()这个函数是关键

{name:\’平凡的世界\’,author:\’路遥\’} 这是你服务器端返回的json字符串数据,那么你客户端你要怎么用呢,eval就是把一个字符串执行下,让普通的字符串变成一个对象(好像说得不是很贴切),就是普通字符执行后,里面的东西会变成可以直接使用的代码:如日期对象,数组。。。
eval(“var movie = ” +result); 这句意思就是把字符串变成可以直接使用的对象
执行后就相当于
var movie={name:\’平凡的世界\’,author:\’路遥\’};把json对免赋值给movie变量
那么就可以直接引用了movie.name就是“平凡的世界”了movie.author就是“路遥”了,希望你能懂

 

版权声明:本文为lcxin原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/lcxin/p/11453997.html