映画などのデータを返す JSONP API を提供する themoviedb.org 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 つの関連する映画のタイトルを追加するために each() を使用できる方法があるかどうか疑問に思っていました。
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(''));
}