使用Javascript Ajax 通訊操作JSON資料 [下]

來源:互聯網
上載者:User

標籤:

上一篇文章我們獲得後台資料庫的資料後轉換成json格式然後返回到前台,但只是返回的一位元組,這次我們返回二維和三維數組和對象。

前台代碼shizhan.html:

 1 <!DOCTYPE html> 2 <html> 3 <head> 4     <title>json資料擷取</title> 5     <meta charset="utf-8"> 6     <script src=‘jquery.js‘></script> 7     <script type="text/javascript"> 8     $("document").ready(function() { 9         var url="shizhan.php";10         var data={"do":"first"};11         12         $.getJSON(url,data,function(res){13             $("#username").val(res.username);14             $("#password").val(res.password);15         });16 17         var data={"do":"second"};18         $.getJSON(url,data,function(res) {19             $("#members").val(res.third.members.username);20         });21 22         var data={"do":"third"};23         $.getJSON(url,data,function(res){24             $("#address").val(res.address[1].username);25         });26         27     });28     </script>29 </head>30 <body>31     <h2>一位元組json資料顯示</h2>32     <input type="text" name="username" id="username" /><br/>33     <input type="password" name="password" id="password">34 35     <h2>二位元組json資料顯示</h2>36     <textarea id="members"></textarea>37 38     <h2>三位元組json資料顯示</h2>39     <textarea id="address"></textarea>40 </body>41 </html>

這裡我們用$.getJSON(url,data,callback)來獲得我們從url處返回的json格式的資料,注意,$.getJSON()中的JSON必須大寫。

並且這時我們傳遞給背景參數不把它放在url的末尾,而是直接放在新定義的data變數中。所以背景程式擷取參數時不再使用$_GET[]了,而是使用$_REQUEST[].

還有一點值得提醒的是,在將返回得到的json格式的資料時,如果背景二位元組中的第一位是[‘1‘],則我們在前台賦給變數中的資料的格式應為上述代碼中的

 $("#address").val(res.address[1].username); ,而不是 $("#address").val(res.address.1.username); ,而如果背景二維或者是三維數組的第一位是[‘third‘]等英文時,則可用上述代碼中的 $("#members").val(res.third.members.username); .

  後台代碼:

 1 <?php 2  3 $do=$_REQUEST[‘do‘]; 4  5 $member[‘username‘]=‘慕課網‘; 6 $member[‘password‘]=‘mukewang‘; 7  8 $members[‘1‘][‘username‘]=‘張三‘; 9 $members[‘1‘][‘password‘]=‘zhangsan‘;10 $members[‘2‘][‘username‘]=‘李四‘;11 $members[‘2‘][‘password‘]=‘lisi‘;12 $members[‘2‘][‘address‘]=‘朝陽區‘;13 14 $members[‘third‘][‘members‘][‘username‘]=‘我是第三個使用者名稱‘;15 16 class addressClass{17     public $address = array();18 19     public function setAddress($array) {20         $this->address=$array;21     } 22 23     public function getAddrss() {24         return $this->address;25     }26 }27 28 $addressObj = new addressClass();29 30 $addressObj->setAddress($members);31 32 switch($do) {33     case ‘first‘ : echo json_encode($member);break;34 35     case ‘second‘: echo json_encode($members);break;36 37     case ‘third‘ : echo json_encode($addressObj);break;38 }

    後台代碼中我們使用json_encode()函數來將一位元組,二維數組,三位元組和對象轉換為json格式的資料。

使用Javascript Ajax 通訊操作JSON資料 [下]

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.