从omdbapi接收和显示数据时获取[object Object]

时间:2017-01-08 02:20:23

标签: javascript jquery ajax api xmlhttprequest

我的代码正在执行我想要的操作,除了执行搜索时显示的[object Object]。我可能忽略了一些东西,但我无法找到它的来源。以为我会对它有一些新的看法,看看是否有人能看到我所缺少的东西。

的JavaScript

$('.search-form').submit(function(evt) {
evt.preventDefault();
var url = 'http://www.omdbapi.com/?';
var movie = $('#search').val();
var data = {
    s: movie
};
function callBack(data) {
    var movieHTML = $("#movies").empty();
        $.each(data.Search, function(i, movie) {
            movieHTML += '<li>';
            movieHTML += '<div class="poster-wrap"><img class="movie-poster" src="'+ movie.Poster +'"></div>';
            movieHTML += '<span class="movie-title">'+ movie.Title +'</span>';
            movieHTML += '<span class="movie-year">'+ movie.Year +'</span>';
            movieHTML += '</li>';
            });
        $('#movies').html(movieHTML);
}
$.getJSON(url, data, callBack);

这是我得到的图像。

problem screenshot

1 个答案:

答案 0 :(得分:0)

我不确定您是否需要使用var movieHTML = $("#movies").empty();的具体原因,但用var movieHTML = ''替换它会为我解决问题..
工作代码:
http://codepen.io/ethanrose/pen/OWVdgP?editors=0010

jQuery .empty函数仍然返回dom对象,没有任何子节点。所以你的var movieHTML实际上是用[object, object]声明的,这是dom对象&#34;电影&#34; 关于jQuery的文档.empty
https://api.jquery.com/empty/