簡體   English   中英

從文本文件加載 jsondata 時出現空白頁面

[英]Blank page when loading jsondata from textfile

我正在嘗試從由 json-data 組成的 html 文件加載名稱。 問題是頁面是空白/白色,並且在 Firefox 調試器中沒有錯誤消息。

test.html 和 persondb.html 在同一台服務器上。

測試.html

 <!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>JSON Exempel</title>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
</head>
<body>

<ul id="person-lista">

</ul>

<script>

$.ajax({
    url: "http://www.mywebbpage.com/ajax/persondb.html", // not the realname
    data: {
        limit: 5,
        name: 'ra'
    },

    success: function (response) {

        var personArray = response.personer;
        for(var i=0; i < personArray.length; i++) {
            var person = personArray[i];
            $('#person-lista').append('<li>' + person.fnamn + '</li>');
        }
    }
});

</script>
</body>
</html>

個人數據庫.html

{
"personer": [{
    "fnamn": "RACHELLE",
    "enamn": "ZWIEFELHOFER",
    "epost": "rachelle.zwiefelhofer@somefakedomain.nu"
}, {
    "fnamn": "RACQUEL",
    "enamn": "JOH",
    "epost": "racquel.joh@somefakedomain.nu"
}, {
    "fnamn": "RAE",
    "enamn": "BRAVARD",
    "epost": "rae.bravard@somefakedomain.nu"
}, {
    "fnamn": "RAFAEL",
    "enamn": "SAGASTUME",
    "epost": "rafael.sagastume@somefakedomain.nu"
}, {
    "fnamn": "RAISA",
    "enamn": "REINES",
    "epost": "raisa.reines@somefakedomain.nu"
}]
}

persondb.html 格式不正確嗎? 這就是原因嗎? 在瀏覽器中加載 persondb.html 時,它看起來像下面這樣

{ "personer": [{ "fnamn": "RACHELLE", "enamn": "ZWIEFELHOFER", "epost": "rachelle.zwiefelhofer@somefakedomain.nu" }, { "fnamn": "RACQUEL", "enamn": "JOH", "epost": "racquel.joh@somefakedomain.nu" }, { "fnamn": "RAE", "enamn": "BRAVARD", "epost": "rae.bravard@somefakedomain.nu" }, { "fnamn": "RAFAEL", "enamn": "SAGASTUME", "epost": "rafael.sagastume@somefakedomain.nu" }, { "fnamn": "RAISA", "enamn": "REINES", "epost": "raisa.reines@somefakedomain.nu" }] }

還是“同源政策”有問題? 但文件在同一台服務器上(同一文件夾)

您需要先解析 JSON,然后才能在循環中訪問它 -

success: function (response) {

    var res = JSON.parse(response);
    var personArray = res.personer;
    for(var i=0; i < personArray.length; i++) {
        var person = personArray[i];
        $('#person-lista').append('<li>' + person.fnamn + '</li>');
    }
}

您必須解析 JSON,正如 EatPeanutButter 所提到的,或者您必須使用 html 頁面的響應發送正確的內容類型(應用程序/json)。 您的 JSON 格式良好。

暫無
暫無

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

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