Javascript jqueryajax按钮不是';行不通
我对编写ajax和使用restful api非常陌生。。。所以,请容忍我 我有一个在后端使用的Laravel5.2RESTfulAPI,我尝试使用Jquery/Ajax加载一个类别列表。当您在类别中单击时,每个子类别都可以正常加载,但我似乎无法让“后退”按钮正常工作(我指的是我正在生成的LI,而不是浏览器后退按钮)。当您单击它时,它会显示警报-数据是正确的,但仅此而已。列表不会刷新并填充相应的项 编辑 也没有错误被抛出到javascript控制台。它不会从ajax调用中填充 编辑 我在发表原始帖子后立即删除了request.abort() 编辑 以下是从URL api/categories/4返回的JSON——作为示例 [{“id”:6,“parent”:4,“name”:“sub_subcat4_1”,“slug”:“sub_subcat4_1”,“description”:null,“created_at”:null,“updated_at”:null},{“id”:7,“parent”:4,“name”:“sub_subcat4_2”,“slug”:“sub sub_subcat4_2”,“description”:null,“created_at”:null,“updated_at”:null}] 编辑 下面是#类别的HTMLJavascript jqueryajax按钮不是';行不通,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我对编写ajax和使用restful api非常陌生。。。所以,请容忍我 我有一个在后端使用的Laravel5.2RESTfulAPI,我尝试使用Jquery/Ajax加载一个类别列表。当您在类别中单击时,每个子类别都可以正常加载,但我似乎无法让“后退”按钮正常工作(我指的是我正在生成的LI,而不是浏览器后退按钮)。当您单击它时,它会显示警报-数据是正确的,但仅此而已。列表不会刷新并填充相应的项 编辑 也没有错误被抛出到javascript控制台。它不会从ajax调用中填充 编辑 我在发表原始帖
<div class="row">
<div class="col-sm-12">
<ul id="categories">
</ul>
</div>
Javascript文件
<script>
/*
* This loads the default / root categories.
*/
function getRootCategories() {
$.getJSON("api/categories", function(data) {
var categories = [];
$("#categories").html("");
$.each(data, function(key, val) {
$("#categories").append("<li class='subcat' data-id='" + val.id + "' onClick='getSubcats(this);'>" + val.name + '</li>');
});
});
}
/*
* This loads the sub categories if there's any data returned. Otherwise, just leave the user where they are.
*/
function getSubcats(cat) {
var dataID = cat.getAttribute("data-id");
alert(dataID);
if(dataID == "null") {
getRootCategories();
}
else {
$.getJSON("api/categories/" + dataID, function (data) {
if (data.length != 0) {
$("#categories").html("");
var newCats = '';
var parent = '';
$.each(data, function (key, val) {
parent = "<li class='subcat' data-id='" + val.parent + "' onClick='getSubcats(this);'>Back</li>";
newCats += "<li class='subcat' data-id='" + val.id + "' onClick='getSubcats(this);'>" + val.name + '</li>';
});
$("#categories").append(parent + newCats);
}
});
}
}
$(document).ready(function() {
$.ajaxSetup({ cache:false });
getRootCategories();
});
</script>
/*
*这将加载默认/根类别。
*/
函数getRootCategories(){
$.getJSON(“api/类别”,函数(数据){
var类别=[];
$(“#类别”).html(“”);
$。每个(数据、函数(键、值){
$(“#categories”).append(“”+val.name+” );
});
});
}
/*
*如果返回任何数据,则加载子类别。否则,请将用户留在原地。
*/
函数getSubcats(cat){
var dataID=cat.getAttribute(“数据id”);
警报(数据标识);
如果(数据ID==“空”){
getRootCategories();
}
否则{
$.getJSON(“api/categories/”+dataID,函数(数据){
如果(data.length!=0){
$(“#类别”).html(“”);
var newCats='';
var parent='';
$。每个(数据、函数(键、值){
parent=“Back ”;
newCats+=“”+val.name+” ;
});
$(“#类别”)。追加(父项+新类别);
}
});
}
}
$(文档).ready(函数(){
$.ajaxSetup({cache:false});
getRootCategories();
});
好的,我只是把变量都弄混了。我没有设置正确的家长id
新脚本如下所示-
<script>
var previous = null;
/*
* This loads the default / root categories.
*/
function getRootCategories() {
$.getJSON("api/categories", function(data) {
var categories = [];
$("#categories").html("");
$.each(data, function(key, val) {
$("#categories").append("<li class='subcat' data-parent='" + val.parent + "' data-id='" + val.id + "' onClick='getSubcats(this);'>" + val.name + '</li>');
previous = val.parent;
});
});
}
/*
* This loads the sub categories if there's any data returned. Otherwise, just leave the user where they are.
*/
function getSubcats(cat) {
var dataID = cat.getAttribute("data-id");
previous = cat.getAttribute("data-parent");
if(dataID == "null") {
getRootCategories();
}
else {
$.getJSON("api/categories/" + dataID, function (data) {
if (data.length != 0) {
$("#categories").html("");
var newCats = '';
var parent = '';
$.each(data, function (key, val) {
parent = "<li class='subcat' data-id='" + previous + "' onClick='getSubcats(this);'>Back</li>";
newCats += "<li class='subcat' data-parent='" + val.parent + "' data-id='" + val.id + "' onClick='getSubcats(this);'>" + val.name + '</li>';
});
$("#categories").append(parent + newCats);
}
})
.fail(function(jqxhr, textStatus, error) {
console.log("Request Failed: " + textStatus + " - " + error);
});
}
}
$(document).ready(function() {
$.ajaxSetup({ cache:false });
getRootCategories();
});
</script>
var-previous=null;
/*
*这将加载默认/根类别。
*/
函数getRootCategories(){
$.getJSON(“api/类别”,函数(数据){
var类别=[];
$(“#类别”).html(“”);
$。每个(数据、函数(键、值){
$(“#categories”).append(““+val.name+” ”);
previous=val.parent;
});
});
}
/*
*如果返回任何数据,则加载子类别。否则,请将用户留在原地。
*/
函数getSubcats(cat){
var dataID=cat.getAttribute(“数据id”);
previous=cat.getAttribute(“数据父级”);
如果(数据ID==“空”){
getRootCategories();
}
否则{
$.getJSON(“api/categories/”+dataID,函数(数据){
如果(data.length!=0){
$(“#类别”).html(“”);
var newCats='';
var parent='';
$。每个(数据、函数(键、值){
parent=“Back ”;
newCats+=“