Hi Guys I have a problem to make a accordion menu (Nested) in Apache Cordova. I have to function with two getjson to get categories and sub categories. Middle of first function i call second function to get sub Categories,But Second Function Did not return my favorite string that is contains htmlSubCategories and it returns undefined value
//Function 1 var Categoriesdata = []; function getCategories() { var htmlCategories = ""; $.getJSON('http://example.com/Categories', null, function (Categoriesdata) { for (var i = 0; i < Categoriesdata.length ; i++) { { htmlCategories += "<li>"; htmlCategories += "<a href='#'> " + Categoriesdata[i].Text + "</a>"; htmlCategories += getCategoriesRev(Categoriesdata[i].Id); htmlCategories += "</li>"; } } $(".Categories").html(htmlCategories); }); } //Function 2 function getCategoriesRev(Id) { var htmlSubCategories = ""; $.getJSON('http://example.com/CategoriesRev', { id: Id }, function (CategoriesdataRev) { if (CategoriesdataRev.length > 0) { for (var j = 0; j < CategoriesdataRev.length; j++) { htmlSubCategories += "<li>"; htmlSubCategories += "<a href='#'> " + CategoriesdataRev[j].Text + "</a>"; htmlSubCategories += getCategoriesRev(CategoriesdataRev[j].Id); htmlSubCategories += "</li>"; } htmlSubCategories = "<ul class='submenu'>" + htmlSubCategories + "</ul>"; } return htmlSubCategories; }); }
.always(data)at the end of 2nd function and returning the value inside it? This way, you should be able to return data when it is ready.$.getJSON('CategoriesRev'supposed to do?getCategoriesRevinto it withiwhich is not defined in your second function! Correct your own code first and then let us know if it is working or not.