我试图将每个json对象数据添加到div中。
但是我的语法有些问题。
我不知道为什么第一个警报有效。但不是下面的html
我收到错误:"电影没有在buf.push定义"一旦我重新加载页面。
这是我的代码:
$(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{
$.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();
});
});
感谢任何正确方向的帮助:)
答案 0 :(得分:2)
我想用javascript混合其他一些语言回声。
试试这个:
$.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>';
});
次要原因;
您可能需要添加
dataType: 'json'
或
data = $.parseJSON(data);
如果您使用json作为AJAX结果字符串。