簡體   English   中英

使用AJAX從JSON文件中檢索數據

[英]Using AJAX to retrieve data from JSON File

所以我試圖從我的JSON文件中讀取數據並使用HTML在網頁上顯示它。 它可以使用這個特定數據庫的簡單鍵,它對我不起作用。

JSON:

var carInfo = [
{
    carId: 1,
    carPrice : 15.00,
},
{
    carId: 2,
    carPrice : 25.00,
}
];

JS:

$(document).ready(function() {

    $.getJSON("vehicle_data.json", function(data) {

        $.each(data.carInfo, function() {

            $("ul").append("<li>Car ID: "+this[carInfo[0].carId]);

        });         
    });     
});

HTML:

<html>
<body>
<ul></ul>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="json_data_retrieve.js"></script>
</body>
</html>

它不是有效的JSON文件。 這是一個JS腳本。

var carInfo = [
    {
        carId: 1,
        carPrice : 15.00,
    },
    {
        carId: 2,
        carPrice : 25.00,
    }
];

嘗試這個:

{
    "carInfo": 
    [
        {
            "carId": 1,
            "carPrice": 15
        },
        {
            "carId": 2,
            "carPrice": 25
        }
    ]
}

更新:
您可以將此腳本作為腳本源加載到HTML中。 它必須是.js文件。

<script src="vehicle_data.js"></script>

如果需要動態加載它,請使用jQuery $.getScript方法。 它具有.json擴展名無關緊要,因為它將被評估為腳本。

$(document).ready(function() 
{
    $.getScript("vehicle_data.json", function() 
    {
        // Pay attention. In this case, you work with carInfo 
        // variable because it has been executed as a script, 
        // but not loaded as a JSON file.
        $.each(carInfo, function()             {
            $("ul").append("<li>Car ID: " + this[carInfo[0].carId]);
        });         
    });     
});

但是,有人給你帶有JS聲明的.json文件並告訴你應該執行它但不應該重命名它或加載為腳本是奇怪的。

看起來您正試圖從內部迭代父對象。 嘗試這個

$.each(data.carInfo, function(k, v) {

        $("ul").append("<li>Car ID: "+v.carId);

    });   

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM