使用jquery跟php接json格式資料
之前講到用jquery接xml格式資料,現在就是用公司在接的json格式來接了,跟接xml格式很像,了解怎麼用jquery的ajax方法,稍微轉換一下就可以了。
首先請php吐一個json格式的檔案出來
吐出來的json格式長這樣:
json是一種javascript的物件,因為他本身是javascript,轉換起來沒問題,加上不像xml這麼肥,所以這幾年來很流行。
因為他類似xml,所以我們也可以做巢狀的結構,像這樣包起來。
真正在應用的時候會把資料庫撈出來的資料,用迴圈的方式弄成json的格式,再用ajax去parse出來。
接成功後再把資料撈出來就可以了。
所以你可以這樣把資料append到DOM裡。
如果要取到第二層資料,則是這樣
像這樣來把資料弄到頁面上真的很方便阿,可以試試看。
參考資料:
[jQuery]jQuery取得JSON資料
JQuery JSON 簡例
首先請php吐一個json格式的檔案出來
- <?php
- $city = array();
- $city["0"] = array ("name"=>"Jason", "tel"=>"0919000000", "address"=> "新竹");
- $city["1"] = array ("name"=>"May", "tel"=>"0928222222", "address"=> "桃園");
- echo json_encode($city);
- ?>
吐出來的json格式長這樣:
- [
- { name: "Jason", tel: "0919000000", address: "新竹" },
- { name: "May", tel: "0928000000", address: "桃園" },
- ]
因為他類似xml,所以我們也可以做巢狀的結構,像這樣包起來。
- $dataArr=array(
- "date"=>"2012-01-01",
- "shoes" => array(
- "kind1" => 2,
- "kind2" =>3
- )
真正在應用的時候會把資料庫撈出來的資料,用迴圈的方式弄成json的格式,再用ajax去parse出來。
- $.ajax({
- url: "json.php",
- type: "GET",
- dataType: "json",
- success: function(json) {
- }
- });
- var NumOfData = json.length; //取出物件長度
- //繞行把資料alert出來
- for (var i = 0; i < NumOfData; i++) {
- alert("Name: "+data[i]["name"]);
- alert("Tel: "+data[i]["tel"]);
- alert("Address: "+data[i]["address"]);
- }
所以你可以這樣把資料append到DOM裡。
- var $div=$("div");
- for (var i = 0; i < NumOfData; i++) {
- $div.append("Name: "+json[i]["name"]+", Tel: "+json[i]["tel"]+", Address: "+json[i]["address"]);
- $div.append("<br/>");
- }
如果要取到第二層資料,則是這樣
- json[i]["level1"]["level2"]
像這樣來把資料弄到頁面上真的很方便阿,可以試試看。
參考資料:
[jQuery]jQuery取得JSON資料
JQuery JSON 簡例
留言