1. 程式人生 > >使用jQuery——Ajax請求本地json檔案

使用jQuery——Ajax請求本地json檔案

很多情況下,我們的頁面需要Ajax請求json資料生成內容。使用jQuery的 ajax() 方法請求資料時,語法如下:

$.ajax({name:value, name:value, ... })

示例如下:

本地json內容為:

{
  "list":[
    {
      "manage":[
        {"tool":"查詢工具"},
        {"tool":"管理工具"}
      ]
    }
  ]
}
完整程式碼:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>ajax請求本地json檔案</title>
</head>
<body>
<div id="test"></div>
<script  src="jquery-2.2.1.min.js"></script>
<script>
    $(function(){
        $.ajax({
            //請求方式
            type:"GET",
            //檔案位置
            url:"json_data.json",
            //返回資料格式為json,也可以是其他格式如
            dataType: "json",
            //請求成功後要執行的函式,拼接html
            success: function(data){
                var str="<ul>";
                $.each(data.list[0].manage,function(i,n){
                    str+="<li>"+n.tool+"</li>";
                });
                str+="</ul>";
                $("div").append(str);
            }
        });
    });
</script>
</body>
</html>

得出結果:
  • 查詢工具
  • 管理工具

ajax請求成功,值得一提的是 each() 方法中,的兩個引數,第一個是陣列物件,由於我的json樹內容有兩層,一開始誤用成

data.list.manage
導致出錯,這種小失誤值得警惕。第二個引數是call呼叫的函式,在這裡傳入的 i 和 n 分別代表元素在陣列的位置和元素值。遍歷json元素時可以用“.”獲取相應的的值,如此時的 n.tool 。