2017-04-03 100 views
-1

我试图从特定网站输出json,并在我的html网站上显示该信息。例如,这将是对网站example.com的JSON,把json从一个网站上显示在html网站上

[ { "nickname":"name", "votes":"3" }, { "nickname":"name", "votes":"2" }, { "nickname":"name", "votes":"2" }] 

如何我能得到来自example.com的数据,并在我的html网页mydomain.com显示呢?任何帮助将是惊人的!

+0

你可以使用jQuery与jQuery ..看看这里http://api.jquery.com/jquery.ajax/ https://www.w3schools.com/jquery/ajax_ajax.asp – winter

回答

-1

只是将它解析为json对象,然后运行一个循环来显示它,然后运行以下示例。

var text = '{"employees":[' + 
 
'{"firstName":"John","lastName":"Doe" },' + 
 
'{"firstName":"Anna","lastName":"Smith" },' + 
 
'{"firstName":"Peter","lastName":"Jones" }]}'; 
 

 
obj = JSON.parse(text); 
 

 
for (i = 0; i < obj.employees.length; i++) { 
 
document.getElementById("demo").innerHTML += 
 
obj.employees[i].firstName + " " + obj.employees[i].lastName+ "<br/>";  
 
}
<h2>Create Object from JSON String</h2> 
 

 
<p id="demo"></p>

+0

谢谢!我将如何去从网​​站抓取数据,而不是让它在var文本中出现? – Czar

+0

,这取决于服务器端技术使用什么服务器端技术你使用你需要启动一个http获取或发布根据你的需求。 – MasterDev

+0

$ .getJSON('example.com',function(result){}); 如果我使用这个,结果是json字符串对吗?我可以直接解析吗? – Czar

-1

你JSON是包含对象的数组。每个对象都有一个nickname和一个votes成员。让我们假设你有一个模板是这样的:

function votesByNicknameTemplate(input, target) { 
    var output = ""; 
    for (var index in input) { 
     output += input[index].nickname + " has " + input[index].votes + "<br>"; 
    } 
    target.innerHTML += output 
} 

如果调用此使用votesByNicknameTemplate([ { "nickname":"name", "votes":"3" }, { "nickname":"name", "votes":"2" }, { "nickname":"name", "votes":"2" }], document.getElementsByTagName("body")[0]);那么你就写一个outputbody。您可以abstractize这进一步支持更多的模板,像这样:

function runTemplate(input, target, templateName) { 
    window[templateName](input, target); 
} 

,然后用相同的结果叫runTemplate([ { "nickname":"name", "votes":"3" }, { "nickname":"name", "votes":"2" }, { "nickname":"name", "votes":"2" }], document.getElementsByTagName("body")[0], "votesByNicknameTemplate"),但有一个更通用的解决方案。

+0

谢谢!我将如何去从网​​站抓取数据传递到runTemplate? – Czar

+0

@Czar你需要向服务器发送一个AJAX请求,并在回调中处理响应。请阅读更多信息:https://www.w3schools.com/xml/ajax_xmlhttprequest_send.asp –