OMDb API在javascript中不起作用

OMDb API在javascript中不起作用,javascript,jquery,api,Javascript,Jquery,Api,我正在使用获取电影的标题、年份和运行时间。这些应该在页面加载后立即显示在页面上。但它不起作用 一旦页面加载,它就会显示未定义的写入内容。我在哪里犯了错误 我是j query ajax和API的新手,因此如果您有任何帮助,我将不胜感激。提前感谢:) < window.onload=function() { $.ajax({ url:“http://www.omdbapi.com/?t=spiderman&y=&plot=full&r=json", 跨域:是的, 数据类型:“json”, 成

我正在使用获取电影的标题、年份和运行时间。这些应该在页面加载后立即显示在页面上。但它不起作用

一旦页面加载,它就会显示未定义的写入内容。我在哪里犯了错误

我是j query ajax和API的新手,因此如果您有任何帮助,我将不胜感激。提前感谢:)


<  
window.onload=function()
{
$.ajax({
url:“http://www.omdbapi.com/?t=spiderman&y=&plot=full&r=json",
跨域:是的,
数据类型:“json”,
成功:获取
});	
}
//用于获取成功时的数据
函数fetch(e){
var结果=”;
$。每个(e,函数(值){
结果+=“”+value.Title+”

”; 结果+=“”+value.Year+“

”; 结果+=“”+value.Runtime+“

”; }); $('#movie').html(result);//用于以html格式存储结果 }


为了从对象获取所有返回值,您需要按键和值获取每个属性,返回的json如下所示:

{"Title":"Spiderman","Year":"1990","Rated":"N/A","Released":"N/A","Runtime":"5 min","Genre":"Short","Director":"Christian Davi","Writer":"N/A","Actors":"N/A","Plot":"N/A","Language":"German","Country":"Switzerland","Awards":"N/A","Poster":"N/A","Metascore":"N/A","imdbRating":"5.7","imdbVotes":"90","imdbID":"tt0100669","Type":"movie","Response":"True"}
所以只需调用
e.Title
,就可以使用$将Title或循环放入对象中,每个$都有键和值作为参数。 第一个参数是属性名(键),第二个参数是值

$.each(e,function(key,value){
     result+="<p>"+ key + " : " + value +"</p>";         
}); 
$。每个(e,函数(键,值){
结果+=“”+key+”:“+value+”

”; });

<  
window.onload=function()
{
$.ajax({
url:“http://www.omdbapi.com/?t=spiderman&y=&plot=full&r=json",
跨域:是的,
数据类型:“json”,
成功:获取
});	
}
//用于获取成功时的数据
函数fetch(e){
var结果=”;
//其中键是属性名,值是它们的值
$。每个(e,函数(键,值){
结果+=“”+key+”:“+value+”

”; }); $('#movie').html(result);//用于以html格式存储结果 }


为了从对象获取所有返回值,您需要按键和值获取每个属性,返回的json如下所示:

{"Title":"Spiderman","Year":"1990","Rated":"N/A","Released":"N/A","Runtime":"5 min","Genre":"Short","Director":"Christian Davi","Writer":"N/A","Actors":"N/A","Plot":"N/A","Language":"German","Country":"Switzerland","Awards":"N/A","Poster":"N/A","Metascore":"N/A","imdbRating":"5.7","imdbVotes":"90","imdbID":"tt0100669","Type":"movie","Response":"True"}
所以只需调用
e.Title
,就可以使用$将Title或循环放入对象中,每个$都有键和值作为参数。 第一个参数是属性名(键),第二个参数是值

$.each(e,function(key,value){
     result+="<p>"+ key + " : " + value +"</p>";         
}); 
$。每个(e,函数(键,值){
结果+=“”+key+”:“+value+”

”; });

<  
window.onload=function()
{
$.ajax({
url:“http://www.omdbapi.com/?t=spiderman&y=&plot=full&r=json",
跨域:是的,
数据类型:“json”,
成功:获取
});	
}
//用于获取成功时的数据
函数fetch(e){
var结果=”;
//其中键是属性名,值是它们的值
$。每个(e,函数(键,值){
结果+=“”+key+”:“+value+”

”; }); $('#movie').html(result);//用于以html格式存储结果 }


谢谢你,这是可行的,但你能解释一下我不懂。@shuchi,我编辑了答案,现在你可以循环获取所有返回值及其对应的键,希望有帮助。谢谢你,这是可行的,但你能解释一下我不懂。@shuchi,我编辑了答案,现在您可以循环获取所有返回的值及其对应的键,希望这对您有所帮助。