Here is a solution:
var mainMenu = $("#test ul.mainMenu");var i, j, k, navItem, navItemLevel1, navItemLevel2;for(var i = 0; i < menu.length; i++){ var navItem = menu[i]; var new_li = $('<li ><a href="' + navItem.url + '">' + navItem.title +' </a></li>'); mainMenu.append(new_li); for(var j = 0; j < menu[i].menu.length; j++){ var new_li_ul = $('ul.submenuLevel1', new_li); if(new_li_ul.length <= 0){ new_li_ul = $('<ul ></ul>'); new_li.append(new_li_ul); } var navItemLevel1 = navItem.menu[j]; var new_li_li = $('<li ><a href="' + navItemLevel1.url + '">' + navItemLevel1.title +' </a></li>'); new_li_ul.append(new_li_li); for(var k = 0; k < menu[i].menu[j].menu.length; k++){ var new_li_ul_ul = $('ul.submenuLevel2', new_li_li); if(new_li_ul_ul.length <= 0){ new_li_ul_ul = $('<ul ></ul>'); new_li_li.append(new_li_ul_ul); } var navItemLevel2 = navItemLevel1.menu[k]; new_li_ul_ul.append('<li ><a href="' + navItemLevel2.url + '">' + navItemLevel2.title +' </a></li>'); } }};Here is a fiddle: http://jsfiddle.net/maniator/6JnuG/3/



