我正在使用themoviedb.org API,它提供了返回电影等数据的JSONP API。
我试图创建一个可以搜索电影的表单,它会根据查询返回5个最相关的电影片段。
目前我正在使用:
success: function(parsed_json) {
console.log(parsed_json);
$(".search").append("<li data-id=" +parsed_json["results"]["0"]["id"]+ ">" + parsed_json["results"]["0"]["original_title"] + "</li>");
$(".search").append("<li data-id=" +parsed_json["results"]["1"]["id"]+ ">" + parsed_json["results"]["1"]["original_title"] + "</li>");
$(".search").append("<li data-id=" +parsed_json["results"]["2"]["id"]+ ">" + parsed_json["results"]["2"]["original_title"] + "</li>");
$(".search").append("<li data-id=" +parsed_json["results"]["3"]["id"]+ ">" + parsed_json["results"]["3"]["original_title"] + "</li>");
$(".search").append("<li data-id=" +parsed_json["results"]["4"]["id"]+ ">" + parsed_json["results"]["4"]["original_title"] + "</li>");
$(".search").append("<li data-id=" +parsed_json["results"]["5"]["id"]+ ">" + parsed_json["results"]["5"]["original_title"] + "</li>");
}
使用data-id =电影ID附加所有电影标题。这似乎很多编码,我想知道是否有一种方法可以使用每个()来追加前5个相关的电影片名。
有关JSONP API的信息:http://help.themoviedb.org/kb/api/jsonp
使用JSFiddle:http://jsfiddle.net/javascript/5ApuF/
修改 的
我试过了:
success: function(parsed_json) {
var textToInsert = [];
var i = 0;
var length = parsed_json.length;
for (var a = 0; a <length; a += 1) {
textToInsert[i++] = '<li>';
textToInsert[i++] = parsed_json[a];
textToInsert[i++] = '</li>' ;
}
$('.search').append(textToInsert.join(''));
}
答案 0 :(得分:1)
我相信这样的事情可以很好地满足你的需求......
success: function(parsed_json) {
console.log(parsed_json);
if (k > 4) {
return false;
}
$.each(parsed_json["results"], function(k, v) {
$(".search").append("<li data-id=" +v["id"]+ ">" + v["original_title"] + "</li>");
});
}
古德勒克!我编辑了这个因为我忘了你只想要5个结果:)
- 人
答案 1 :(得分:0)
尝试
for (result in parsed_json["results"]) {
$(".search").append("<li data-id=" +parsed_json["results"][result]["id"]+ ">" + parsed_json["results"][result]["original_title"] + "</li>");
}