如何在没有 Jquery 的情况下在本地使用 javascript 加载 json 文件?

我正在创建一个网站以在 javascript 中取得进展,但我有一个小问题,我尝试了各种方法,我的浏览器不想加载我的 json 文件。


我尝试了在互联网上找到的许多代码,但没有一个有效(或者我不知道如何使它们工作)。最后,我喜欢这个很容易理解的,但你的一个也不起作用,并且总是返回错误消息。



function loadJSON(path,success, error)

{

    var xhr = new XMLHttpRequest();

    xhr.onreadystatechange = function()

    {

        if (xhr.readyState === XMLHttpRequest.DONE) {

            if (xhr.status === 1) {

                if (success)

                    success(JSON.parse(xhr.responseText));

            } else {

                if (error)

                    error(xhr);

            }

        }

    };

    xhr.open("GET", path , true);

    xhr.send();

}


function test()

{

    loadJSON('test.json', function(data) { console.log(data); }, function(xhr) { console.error(xhr); });

}

我运行测试功能,但每次,控制台都会返回一个错误。有人有解决我的问题的想法吗?


收到一只叮咚
浏览 270回答 1
1回答

呼啦一阵风

status&nbsp;是 HTTP 响应代码。200 表示请求成功。状态很可能永远不会是 1。这是HTTP 代码列表作为解决方案,我建议使用fetch API,这是查询文件的现代方式。以下是有关如何使用它的一些示例如果您真的想使用 AJAX,请使用以下命令:var request = new XMLHttpRequest();request.open('GET', '/my/url', true);request.onload = function() {&nbsp; if (this.status >= 200 && this.status < 400) {&nbsp; &nbsp; // Success!&nbsp; &nbsp; var resp = this.response;&nbsp; } else {&nbsp; &nbsp; // We reached our target server, but it returned an error&nbsp; }};request.onerror = function() {&nbsp; // There was a connection error of some sort};request.send();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript