首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 习惯用SESSION传值,但FRAME间的传值就存在问题了 [已结贴,结贴人:laoyingisme]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • laoyingisme
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 揭帖率:
    发表于:2007-10-09 10:12:36 楼主
    <FRAMESET>
    <FRAME  name="title" src="top.aspx">
    <FRAMESET>
    <FRAME name="dir" src="left.aspx" >
    <FRAME id="main" src="logon.aspx">

    </FRAMESET>
    </FRAMESET>

    我用了一个大家都惯用的框架
    main的logon.aspx是个登录界面,我用SESSION来传值一个用户名的到left.aspx里
    比如:
    1.Logon.aspx
    Session["name"]=txtname.text;

    2.接受页面left.aspx
    lblname.Text=Session["name"];
    但在lblname不能显示,请大家指点迷津.
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • itants
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 10:20:311楼 得分:2
    应该可以呀,我就是这么用的
    lblname.Text=Session["name"].tostring();
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • laoyingisme
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 10:26:072楼 得分:0
    不能即时的显示
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wzhh598
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 10:34:063楼 得分:0
    可以的,可能页面没有刷新,
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • TerryM
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 10:41:424楼 得分:0
    你的left.aspx并没有刷新啊,当然不能显示了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zhj__zhj
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 10:46:455楼 得分:0
      框架刷新好像没有用,要关闭重新打开。其实debug下就知道了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sq_zhuyi
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 10:51:486楼 得分:2
    登陆后重新指定链接
    response.redirect("frameset.aspx")
    或者刷新left.aspx
    dir.src='left.aspx'
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • laoyingisme
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 11:11:477楼 得分:0
    还是不行,就是大概要重新刷新一下,我重新指向也不行
    Response.Write(" <script language=javascript>");
    Response.Write("window.parent.dir.location='left.aspx';");   
    Response.Write(" </script>");
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • laoyingisme
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 13:32:298楼 得分:0
    可怜了,这事没人管了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yuan74521940
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-09 17:08:239楼 得分:0
    代码贴全点!!
    是不是登陆后指向错了?
    还是什么?
    LZ把你的登陆代码贴出来 !!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • laoyingisme
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-10 15:24:3510楼 得分:0
    我的意思是登录验证后要转到一个页面,把session["name"](即用户名)的值传到另一页面(left.aspx)并显示??,通常的登录后的欢迎页面

    我加了HTML代码 <meta http-equiv="refresh" content="10">//定时刷新,10秒自动刷新,10后用户名会显示出来,说明值是存在的.问题还没得到解决!

    我直接用Response.Redirect("left.aspx"),也OK的,但有两个left.aspx页面了,烦烦.......

    真正的高手在那里???

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • mobin4211
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-11 09:08:3211楼 得分:6
        void Session_Start(object sender, EventArgs e)
        {
            // 在新会话启动时运行的代码
            Session["name"] = "";
        }
    在试试
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangyanyan
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-11 09:09:0212楼 得分:0
    跟一下看看
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • pepsibeast
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-11 09:48:3213楼 得分:0
    楼主加个.ToString()试试看。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • laoyingisme
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-11 15:26:2414楼 得分:0
      void Session_Start(object sender, EventArgs e) 
        {
            // 在新会话启动时运行的代码
            Session["name"] = "";
        }
    在试试

    11楼你的代码放在那里????
    12楼我试过了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • junon
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-11 16:07:0215楼 得分:0
    global.asax
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • laoyingisme
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-11 16:42:5016楼 得分:0
    试过了,确实能传过去,还是不符合要求

    其实就是一个登录后要转到 一新页面,同时要把Session["name"].ToString()的值在另一页面显示(隐藏的值传递)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lishijie910123
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2007-10-13 13:13:4617楼 得分:10
            if (Session["EmpName"] == null)
            {
                Response.Write(" <script>top.location.href='index.aspx'; </script>");
                return;
            }
            if (!IsPostBack)
            {
                LoginMessage.Text = "当前用户:" + Session["EmpName"].ToString();
            }
    修改 删除 举报 引用 回复