gpt4 book ai didi

javascript - 尝试从git存储库中提取json格式的数据

转载 作者:行者123 更新时间:2023-12-01 03:30:44 25 4
gpt4 key购买 nike

我是一名初学者,正在尝试学习 ajax 并使用 json 文件。我想使用 JSON 格式的数据。但我请求的结果是一个空文本。 更新:这是我的代码:

var quoteContainer=document.getElementById("random-quote");
var btn=document.getElementById("btn");
btn.addEventListener("click",function(){
var myRequest=new XMLHttpRequest();

myRequest.open("GET","https://raw.githubusercontent.com/4skinSkywalker/Database-Quotes-JSON/master/quotes.json",true);
myRequest.addEventListener('load', function () {
var myData=JSON.parse(myRequest.responseText);
console.log(myRequest.responseText);
renderHTML(myData);
});
myRequest.send();
});


function renderHTML(data){
var LenJson=data.length;
var Num=Math.random()*LenJson;
console.log(Num);
var QuoteString="<p id='quote-text'>"+data[i].quoteText+"</p>"
var AuthorString="<p id='quote-author'>"+data[i].quoteAuthor+"</p>"
quoteContainer.insertAdjacentHTML('beforeend',QuoteString);
quoteContainer.insertAdjacentHTML('beforeend',AuthorString);
}

它仍然没有返回任何数据。为什么?

最佳答案

您需要send()它并等待它加载:

var quoteContainer = document.getElementById("random-quote");
var btn = document.getElementById("btn");

btn.addEventListener("click", function() {
var myRequest = new XMLHttpRequest();

myRequest.open("GET", "https://raw.githubusercontent.com/4skinSkywalker/Database-Quotes-JSON/master/quotes.json", true);

myRequest.addEventListener('load', function() {
var myData = JSON.parse(myRequest.responseText);

renderHTML(myData);
});

myRequest.send();
});

function renderHTML(data) {
var LenJson = data.length;
var Num = Math.floor(Math.random() * LenJson);

var QuoteString = "<p id='quote-text'>" + data[Num].quoteText + "</p>";
var AuthorString = "<p id='quote-author'>" + data[Num].quoteAuthor + "</p>";

quoteContainer.insertAdjacentHTML('beforeend', QuoteString);
quoteContainer.insertAdjacentHTML('beforeend', AuthorString);
}
<button id="btn" type="button">Generate Random Quote</button>
<div id="random-quote"></div>

关于javascript - 尝试从git存储库中提取json格式的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44552487/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com