首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

ajax请求ashx数据,在ashx中当session替空时要跳转页面

2013-03-14 
ajax请求ashx数据,在ashx中当session为空时要跳转页面如题,前台ajax请求ashx代码如下:$(document).ready(f

ajax请求ashx数据,在ashx中当session为空时要跳转页面
如题,前台ajax请求ashx代码如下:


$(document).ready(function () {
            $.ajax(
            {
                async: false,
                cache: false,
                type: "POST",
                url: "Ashx/getSysMenu.ashx",
                success: function (data) {
                    zNodes = eval("(" + data + ")");
                },
                error: function (data) {
                    alert(data);
                }
            });
            zTreeObj = $.fn.zTree.init($("#tree"), setting, zNodes);
        });


后台Ashx代码如下:

        public void ProcessRequest(HttpContext context)
        {
            if (context.Session["UserInfo"] != null)
            {
                //ZTree加载
                SynchronousJsonTree(context);
            }
            else
            {
                context.Response.Write(string.Format(@"window.location.href='{0}'","Logon.aspx"));
            }

        }
        
        /// <summary>
        /// 同步ZTree加载
        /// </summary>
        /// <param name="context"></param>
        private void SynchronousJsonTree(HttpContext context)
        {
            //
            SYS_UserInfo user = context.Session["UserInfo"] as SYS_UserInfo;

            List<SYS_Menu> menuList = _iSysMenu.LoadSysMenu(user);



           
            StringBuilder sb = new StringBuilder();

            if (menuList.Count > 0)
            {
                sb.Append("[");
                foreach (SYS_Menu li in menuList)
                {
                    sb.Append("{id:" + li.Menuid + ",pId:" + li.ParentId + ",name:"" + li.Menu + "",action:"" + li.Url + """);
                    sb.Append("},");
                }

                sb = sb.Remove(sb.Length - 1, 1);

                sb.Append("]");
            }
            string content = sb.ToString();
            context.Response.Write(content);
        }



当Session["UserInfo"]为空时不跳转,应当如何去操作. .net ajax ashx javascript
[解决办法]
如果session为空,返回一个特殊值,页面如果接收到特殊值,在浏览器段跳转
[解决办法]
new Function(data)()

热点排行