Here is my XML:
<?xml version="1.0"?>
Screen Manager
Profile Manager
User Manager
NavBar Manager
VBA Manager
Here is my JavaScript:
var tabbar=new dhtmlXTabBar(“a_tabbar”,“top”);
tabbar.setImagePath("<c:out value=’${pageContext.request.contextPath}’/>/dhtmlx/dhtmlxTabbar/codebase/imgs/");
tabbar.setOnSelectHandler(tabChanged);
tabbar.setOnTabContentLoaded(tabChanged);
tabbar.loadXML("<c:out value=’${pageContext.request.contextPath}’/>/layouts/management.xml");
tabbar.setCustomStyle(“Screen”,"#F0F8FF","#f2f0e6",“tabStyleScreen”);
tabbar.setCustomStyle(“Profile”,"#F0F8FF","#f2f0e6",“tabStyleProfile”);
tabbar.setCustomStyle(“User”,"#F0F8FF","#f2f0e6",“tabStyleUser”);
tabbar.setCustomStyle(“NavBar”,"#F0F8FF","#f2f0e6",“tabStyleNavBar”);
tabbar.setCustomStyle(“VBA”,"#F0F8FF","#f2f0e6",“tabStyleVBA”);
setCurrentGrid(tabbar.getActiveTab()); // <- getActiveTab returns null;
The loading is async, so in moment when js command called the tab is not available yet.
The correct code will be
tabbar.loadXML("<c:out value=’${pageContext.request.contextPath}’/>/layouts/management.xml",function(){
setCurrentGrid(tabbar.getActiveTab()); // <- getActiveTab returns null;
});