ajax 請求PHP返回json格式的處理


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就是“路遙”了,希望你能懂

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM