用extjs库的tree动态加载导航菜单,为什么第一次能加载成功,关闭页面后再次打开就无法加载成功?
时间:2011-02-12
来源:互联网
用extjs库的tree动态加载导航菜单,第一次能加载成功,关闭页面后再次打开就无法加载成功,只能重新启动计算机后,第一次能加载成功,关闭页面后再次打开仍然无法加载成功
前台部分代码如下:
var root = new Ext.tree.AsyncTreeNode({
id : "0",
text : "后台管理系统",
loader : new Ext.tree.TreeLoader({
url : "Data/Main.aspx",
listeners : {
"beforeload" : function(treeloader, node) {
treeloader.baseParams = {
id : node.id,
method : 'POST'
};
}
}
})
});
// 创建树型面板
var menu = new Ext.tree.TreePanel({
id : "treePanel",
autoScroll : true,
animate : true,
root : root,
// 默认根目录不显示
rootVisible : false,
border : false,
animate : true,
lines : true,
enableDD : true,
containerScroll : true,
listeners : {
click : nodeClick
}
});
// 加载时自动展开根节点
menu.expandAll();
后台部分代码如下:
public partial class AdminMain : System.Web.UI.Page
{
public string jsons = string.Empty;
protected void Page_Load(object sender, EventArgs e)
{
GetTreeData();
Response.Write(jsons);
}
/// <summary>
/// 获得树信息
/// </summary>
/// <param name="parentId"></param>
/// <returns></returns>
private void GetTreeData()
{
string id = Request.Form["id"];
jsons = ListToJson(id);
}
private string ListToJson(string id)
{
string jsons = "";
IList<SysFun> list = new List<SysFun>();
List<TreeHelper> treeList = new List<TreeHelper>();
if (Session["admin"] != null)
{
string admin = Session["admin"].ToString();
int roleId = UserInfoManager.GetUserInfoByUserId(admin).UserRole.RoleId;
if (id == null)
{
list = SysFunManager.GetAllSysFunsByRoleId(roleId, 0);
foreach (SysFun sf in list)
{
TreeHelper th = new TreeHelper();
th.id = sf.NodeId.ToString();
th.leaf = SysFunManager.SysFunIsLeaf(sf.NodeId);
th.iconCls = "icon" + sf.NodeId;
th.text = sf.DisplayName;
treeList.Add(th);
}
}
else if (id != null)
{
int parentId = int.Parse(id);
list = SysFunManager.GetAllSysFunsByRoleId(roleId, parentId);
foreach (SysFun sf in list)
{
TreeHelper th = new TreeHelper();
th.id = sf.NodeId.ToString();
th.leaf = SysFunManager.SysFunIsLeaf(sf.NodeId);
if (parentId == 0)
{
th.iconCls = "icon" + sf.NodeId;
}
else
{
th.iconCls = "menuicon";
}
th.text = sf.DisplayName;
treeList.Add(th);
}
}
else
{
jsons = "{success:false}";
}
jsons = JsonHelper.ToJSON(treeList);
}
else
{
jsons = "{success:false}";
}
return jsons;
}
}
前台部分代码如下:
var root = new Ext.tree.AsyncTreeNode({
id : "0",
text : "后台管理系统",
loader : new Ext.tree.TreeLoader({
url : "Data/Main.aspx",
listeners : {
"beforeload" : function(treeloader, node) {
treeloader.baseParams = {
id : node.id,
method : 'POST'
};
}
}
})
});
// 创建树型面板
var menu = new Ext.tree.TreePanel({
id : "treePanel",
autoScroll : true,
animate : true,
root : root,
// 默认根目录不显示
rootVisible : false,
border : false,
animate : true,
lines : true,
enableDD : true,
containerScroll : true,
listeners : {
click : nodeClick
}
});
// 加载时自动展开根节点
menu.expandAll();
后台部分代码如下:
public partial class AdminMain : System.Web.UI.Page
{
public string jsons = string.Empty;
protected void Page_Load(object sender, EventArgs e)
{
GetTreeData();
Response.Write(jsons);
}
/// <summary>
/// 获得树信息
/// </summary>
/// <param name="parentId"></param>
/// <returns></returns>
private void GetTreeData()
{
string id = Request.Form["id"];
jsons = ListToJson(id);
}
private string ListToJson(string id)
{
string jsons = "";
IList<SysFun> list = new List<SysFun>();
List<TreeHelper> treeList = new List<TreeHelper>();
if (Session["admin"] != null)
{
string admin = Session["admin"].ToString();
int roleId = UserInfoManager.GetUserInfoByUserId(admin).UserRole.RoleId;
if (id == null)
{
list = SysFunManager.GetAllSysFunsByRoleId(roleId, 0);
foreach (SysFun sf in list)
{
TreeHelper th = new TreeHelper();
th.id = sf.NodeId.ToString();
th.leaf = SysFunManager.SysFunIsLeaf(sf.NodeId);
th.iconCls = "icon" + sf.NodeId;
th.text = sf.DisplayName;
treeList.Add(th);
}
}
else if (id != null)
{
int parentId = int.Parse(id);
list = SysFunManager.GetAllSysFunsByRoleId(roleId, parentId);
foreach (SysFun sf in list)
{
TreeHelper th = new TreeHelper();
th.id = sf.NodeId.ToString();
th.leaf = SysFunManager.SysFunIsLeaf(sf.NodeId);
if (parentId == 0)
{
th.iconCls = "icon" + sf.NodeId;
}
else
{
th.iconCls = "menuicon";
}
th.text = sf.DisplayName;
treeList.Add(th);
}
}
else
{
jsons = "{success:false}";
}
jsons = JsonHelper.ToJSON(treeList);
}
else
{
jsons = "{success:false}";
}
return jsons;
}
}
作者: zhangdapeng_scu 发布时间: 2011-02-12
CSS code
无法加载成功,只能重新启动计算机
重新启动iis服务器不行吗
作者: IBM_hoojo 发布时间: 2011-02-14
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28