首页 > 解决方案 > XMLHttpRequest:对象的状态必须是 OPENED 并且 GET 返回 0

问题描述

所以我创建了一个从以下位置获取 JSON 数据的按钮:https ://learnwebcode.github.io/json-example/animals-1.json

我创建了 HTML:

 <div class="card-body">
       Show animals &nbsp;
       <button type="button" id="prikaziZiv" class="btn btn-primary">Prikaži</button>

       <div id="zivotinje"></div>
  </div>

以及以下 JSON 请求:

/*Ajax*/
var nasZahtev = new XMLHttpRequest();

nasZahtev.open('GET', 'https://learnwebcode.github.io/json-example/animals-1.json', true);

var zivotinjeContainer = document.getElementById("zivotinje");
var dugme = document.getElementById("prikaziZiv");

dugme.addEventListener("click", function(){

    nasZahtev.onload = function(){

        var nasiPodaci = JSON.parse(nasZahtev.responseText);

        dodajHTML(nasiPodaci);
    };
    nasZahtev.send();
});

function dodajHTML(data){
    var htmlString = "";

    for (i=0; i < data.length; i++){
        htmlString += "<p>" + data[i].name + " je " + data[i].species + ".</p>";
    };

    zivotinjeContainer.insertAdjacentHTML('beforeend', htmlString);
};

问题是我得到两个错误: GET https://learnwebcode.github.io/json-example/animals-1.json 0 () (anonymous) @ action.js:44

未捕获的 DOMException:无法在“XMLHttpRequest”上执行“发送”:对象的状态必须是 OPENED。在 HTMLButtonElement。(http://localhost/praksaportal/js/action.js:44:15

在此处输入图像描述

我在这里想念什么?

标签: javascriptjson

解决方案


推荐阅读