我有一些JS从数据库的PHP文件中获取一些AJAX数据,循环并将其放在HTML中。虽然数据仍然来自PHP,但它现在似乎不太合适了。
Javascript:
function setDefault(){
$("#downloads-div").empty();
$.ajax({url: "action.php?action=fetch_downloads&category=%"}).done(function(data_raw){
var data = JSON.parse(data_raw);
for (var i = 0; i < data.length; i++){
$("#downloads-div").append("<div class='col-md-4'><div class='thumbnail'><h4 class='list-group-item-heading'>" + data[i].title + "</h4><div align='right'><span style='display: inline-block; margin-right: 3px;' class='label label-default'>by " + data[i].author + "</span></div><a href='" + data[i].download_link + "'><img src='" + data[i].image + "' alt='" + data[i].title + "' class='img-thumbnail' align='center'></a><p>" + data[i].description + "</p><a href='" + data[i].download_link + "'><button type='button' class='btn btn-primary'><span class='glyphicon glyphicon-download'></span> Download</button></a></div></div></div></div>");
}
});
};
HTML:
<ul class="downloads-div">
</ul>
有一些其他HTML和JS,但除非按下某些按钮,否则不会调用它,所以并不重要。我没有控制台错误,我正在调用该函数!
运行脚本的页面位于:http://bluecode.org.uk/downloads.php
感谢您的帮助!
问候,
答案 0 :(得分:2)
您使用的是class not id,因此在您的JS中应该$(".downloads-div")
而不是$("#downloads-div")
答案 1 :(得分:0)
使用$(".downloads-div"
)因为ul有class="downloads-div"
function setDefault(){
$("#downloads-div").empty();
$.ajax({url: "action.php?action=fetch_downloads&category=%"}).done(function(data_raw){
var data = JSON.parse(data_raw);
for (var i = 0; i < data.length; i++){
$(".downloads-div").append("<div class='col-md-4'><div class='thumbnail'><h4 class='list-group-item-heading'>" + data[i].title + "</h4><div align='right'><span style='display: inline-block; margin-right: 3px;' class='label label-default'>by " + data[i].author + "</span></div><a href='" + data[i].download_link + "'><img src='" + data[i].image + "' alt='" + data[i].title + "' class='img-thumbnail' align='center'></a><p>" + data[i].description + "</p><a href='" + data[i].download_link + "'><button type='button' class='btn btn-primary'><span class='glyphicon glyphicon-download'></span> Download</button></a></div></div></div></div>");
}
});
};
答案 2 :(得分:0)
由于downloads-div
没有id
而class
,所以将jQuery中的选择器从$("#downloads-div")
更改为$(".downloads-div")
。
答案 3 :(得分:0)
您应该使用类名称引用div,因为您正在使用
所以你的js必须改变像jQuery('.download-div')......