除了执行搜索时显示的这个对象外,我的代码正在做我想做的事情。我可能忽略了什么东西,但我找不到这是从哪里来的。我想我会得到一些新鲜的目光,看看是否有人能看到我错过了什么。
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);这是我得到的图像。

发布于 2017-01-08 02:34:23
我不知道你是否需要使用var movieHTML = $("#movies").empty();的具体原因,但是用var movieHTML = ''代替它解决了这个问题。
工作代码:
http://codepen.io/ethanrose/pen/OWVdgP?editors=0010
jQuery .empty函数仍然返回dom对象,只是没有任何子对象。所以您的var movieHTML实际上是用一个[object, object]来声明的,这就是dom对象在jQuery .empty上的文档。
https://stackoverflow.com/questions/41528802
复制相似问题