我想做一个根据角色权限动态显示toolbar菜单,以下代码是我从互联网上找来的,为什么我的运行不了?好郁闷??高手帮帮我,我刚学ext不久,请问这部分代码
// 2 发送请求,获取菜单
Ext.Ajax.request({
url: 'getMenusForUser.action', //这个action里面返回菜单
success: successCallBack,
failure: failureCallBack
});
没有任何事件触发的情况下也能发出请求吗???我就纠结在这里,我用struts1,写了一个getMenusForUser.action,也不知道对不对,请高手指点指点,好急呀,几天睡不着觉了
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL='ext/resources/images/default/s.gif';
Ext.QuickTips.init();
// 1 创建菜单栏
var menuBar = new Ext.Toolbar();
menuBar.render('menubar');
menuBar.add('-');
// 2 发送请求,获取菜单
Ext.Ajax.request({
url: 'getMenusForUser.action', //这个action里面返回菜单
success: successCallBack,
failure: failureCallBack
});
// 3.加载菜单失败
function failureCallBack(){
Ext.Msg.alert('提示信息','菜单加载失败,请刷新页面');
};
// 3.加载菜单成功
function successCallBack(response){
var results=null;//服务器返回的菜单JSON集
try{
results=Ext.decode(response.responseText);
}catch(ex){
alert(response.responseText);
}
var menus=new Array();
var menus_index=0;
for(var i=0;i<results.length;i++){
var temp1=results[i];
if(temp1.fatherId==0){ //一级菜单
var menu_first=new Ext.menu.Menu({
id:temp1.id
});
menus[menus_index]==menu_first;
for(var j=0;j<results.length;j++){ //二级菜单
var temp2=results[j];
if(temp2.fatherId==temp1.id){
var item=new Ext.menu.Item({
id:temp2.id,
text:temp2.text,
linkUrl:temp2.loadURL,
handler:onMenuItemClick
})
menu_first.addItem(item);
}
}
// 将该一级菜单添加到菜单栏中
menuBar.add({
text:temp1.text,
menu:menu_first,
iconCls:temp1.iconCls
});
// 增加分割线
menuBar.add('-');
}
menus_index++;
}
// 增加帮助和退出按钮
menuBar.add('->','-',{
text:'帮助',
iconCls: 'help',
tooltip: '查看帮助'
},'-',{
text:'退出',
iconCls: 'logout',
tooltip: '退出'
},'-');
// 菜单项被点击时触发
function onMenuItemClick(item,e){
var tab=contentPanel.getComponent(item.id);
if(!tab){
tab=contentPanel.add({
id:item.id,
title:item.text,
autoScroll:true,
closable:true,
//layout:'fit',
autoLoad:{url:item.linkUrl,scripts:true}
});
}
contentPanel.setActiveTab(tab);
}
}
//中部工作区
var contentPanel = new Ext.TabPanel({
region:'center',
enableTabScroll:true,
activeTab:0,
items:[{
id:'homePage',
title:'首页',
autoScroll:true,
autoLoad:{url:'modules/test/testModule.html', scripts:true}
}]
});
//顶部工作区
var northBox = new Ext.BoxComponent({
region:'north',
el: 'north',
height:100,
items:[menuBar]
});
//viewport
var viewport = new Ext.Viewport({
layout:'border',
items:[northBox, contentPanel]
});
;
分享到:
相关推荐
ext Panel+toolbar+button 实作带注释 Tom 实作实例,推荐入门学习,不带Ext js lib,请自行加入
Toolbar menu 菜单的学习与实现,实习我们常见的menu的样式功能
MFC工具栏ToolBar按钮添加下拉菜单
android下导航栏ToolBar的使用示例,包含添加菜单、菜单事件、Title、图标等功能
动态改变Menu,动态改变ToolBar,调用多个FormViewSample
VB基础的自带菜单栏使用和微软控件toolbar的使用
示例图 http://p.blog.csdn.net/images/p_blog_csdn_net/newease/EntryImages/20091027/大图标工具栏.jpg pb 大图标 工具栏 toolbar
extjs4.0 实现了主页面框架(主框架使用Ext.Viewport,banner使用Ext.panel.Panel,通过toolbar来放置按钮),包括左侧动态菜单实现(采用Ext.tree.Panel)动态从数据库加载数据来显示菜单(后台代码也在了通过json...
现在许多用户界面都使用工具栏制作菜单条,小弟最近对此感兴趣,便从网上求助,可是得到的帮助大多是BCGControlBar的源代码或者是SizableRebar的源代码,对于只希望是自己的界面具有该功能的朋友来说,这也许是不错...
可以查看博客:http://blog.csdn.net/tanwu52/article/details/78674711
toolbar实例程序: 1)两种动态创建toolbar的方法 2)带提示的toolbar 经过编译运行验证 非常好
ToolBar Menu纯CSS3下拉菜单
Android开发中DrawerLayout控件和Toolbar结合使用实现侧滑菜单
toolbar,ViewPager,菜单同时应用。新手必备,走了好多坑,终于通过。有详细的注释。
Android 动态的隐藏/显示Toolbar列表滚动时动态的隐藏/显示Toolbar
63、Ext.Toolbar类 …………………… 55 64、Ext.Toolbar.Item类 ……………… 56 65、Ext.Toolbar.Separator类 ……… 56 66、Ext.Toolbar.Spacer类 …………… 56 67、Ext.Toolbar.TextItem类 ……… 56 68、Ext....
微软树型菜单TOOLBAR。
在ToolBar上实现添加滚动条和下拉框,并且实现了两者的关联。
VS2010,在CMFCToolBar工具条上添加下拉菜单按钮,源码例程,修改时注意在编译前要删除注册表应用程序项~
监听列表滚动来隐藏或显示Toolbar与浮动按钮,博主账号:gaoxiaoweiandy