我试图为我得到的每一个结果显示图像。
我有当前的代码。
$(document).ready(function() {
var frm = $('#searchmovie');
frm.submit(function (ev) {
$.ajax({
type: frm.attr('method'),
url: frm.attr('action'),
data: frm.serialize(),
crossDomain: true,
success: function (data) {
//alert('Got response from server!');
if(data == "404"){
alert('404, no results found');
}
else{
data = $.parseJSON(data);
$.each(data, function(index,movie) {
//alert(movie.imdb_id);
content += '<div class="col-xs-6 col-md-3 text-center">
<a class="poster-container" href="/movie?imdb_id='+ movie.imdb_id +'">
<img src="http://img.omdbapi.com/?apikey=xxxxxx&h=376&i='+movie.imdb_id+'" height="376" width="251">
</a>
</div>';
});
//content = '<div class="img_wrapper">';
$('#movieresults').append(content);
//$('#movieresults').append(JSON.stringify(data));
}
}
});
ev.preventDefault();
});
});
问题是当我使用下面的警报(movie.imdb_id)时:
else{
data = $.parseJSON(data);
$.each(data, function(index,movie) {
alert(movie.imdb_id);
});
}
我收到提醒并保留在当前页面上。这就是我想要的。 但是当我使用“内容事物”时,我被重定向到API:s res.json页面......?那是为什么?
答案 0 :(得分:2)
content += '<div class="col-xs-6 col-md-3 text-center"> <-- THE LINE BREAK HERE IS INVALID SYNTAX!
<a class="poster-container" href="/movie?imdb_id='+ movie.imdb_id +'">
<img src="http://img.omdbapi.com/?apikey=xxxxxx&h=376&i='+movie.imdb_id+'" height="376" width="251">
</a>
</div>';
你可以做两件事:
1)
content += '<div class="col-xs-6 col-md-3 text-center">';
content += '<a class="poster-container" href="/movie?imdb_id='+ movie.imdb_id +'">';
content += '<img src="http://img.omdbapi.com/?apikey=xxxxxx&h=376&i='+movie.imdb_id+'" height="376" width="251">';
content += '</a>';
content += '</div>';
2)
content += '<div class="col-xs-6 col-md-3 text-center">' +
'<a class="poster-container" href="/movie?imdb_id='+ movie.imdb_id +'">'+
'<img src="http://img.omdbapi.com/?apikey=xxxxxx&h=376&i='+movie.imdb_id+'" height="376" width="251">'+
'</a>'+
'</div>';