在DataGrid中设置一个模板列,是超链结<asp:HyperLink runat="server" Text="修改" NavigateUrl="mody.aspx" Target="_blank"></asp:HyperLink>,点击超链结打开新页面mody.aspx,可奇怪的是会回到初始的登陆验证页面,如果把mody.aspx改名为mody.htm就没这个问题。是不是Session的问题啊?
顺便把其他的问题也问了吧:
在mody.aspx中有几个TextBox控件,可以输入一些数据,现在要点“修改”按钮把部分控件中的值传回到原来的页面中,以此来实现修改数据库表A中的某些字段。同时,在这个mody.aspx中也要打开另一个数据库表B,将另一些控件的值写入到这个数据库表中,请问如何实现最简单?用对话框还是网页比较好,最好有源代码供学习。
谢谢

解决方案 »

  1.   

    多半是session的问题
    后面的你说的就不清楚 了,
    你好好看看session吧还你用IsPostBack时
      

  2.   

    再顶一次:后面的其他问题已经解决,现在就是重新登陆问题很恼火,只要不打开新窗口,比如用按钮,事件处理里面写Response.Redirect("mody.aspx")也没问题,在session方面不了解,希望能得到解答!
      

  3.   

    怎么解决呢,在IsPostBack里面做工作?
      

  4.   

    怎么说来说去就是"session"几个字呢,我对这个的确不太懂,希望各位能说得具体点。我的情况是在A.aspx中有一个按钮,针对该按钮的事件处理程序里面有一个Response.Write("<script>window.open('B.aspx')</script>"),希望能打开新页面B.aspx。可是打开的是原始登陆页面login.aspx,在地址栏里面显示的是"http://login.aspx?ReturnUrl=%2fB.aspx",
    不过如果把B.aspx改成B.htm就没有问题。
    在B.aspx里面只是放了几个控件,没有写任何代码。
      

  5.   

    是不是在A.aspx中要写点什么代码?比如Session("User")=....的,然后再打开新页面?我估计应该是说明该页面已经经过了登陆验证了吧?
    高手们,请帮忙吧,这个问题困绕很久了,先给个代码让我过了这关,以后再慢慢去学习。一定给分!
      

  6.   

    mody.aspx
    里面的关于session判断的部分有问题,
    出错了就跳到登陆叶面,
      

  7.   

    to 一个好人:
       我就没有做什么判断,就是不知道怎么下手啊.现在正在看Session方面的贴,补一下相关常识.
      

  8.   

    session是一个类似“全局”变量的玩意,不过这个全局有点大大到你打整个网站时就等于创建了一个Session。不过我估计不是Session的问题,因为一般Session的默认设置都是30分钟,你可以看一下你的Web.Config中的配置,不可能问题出在那了,也有可能是Application_error事件触发时直接导航到登陆页面了。
      

  9.   

    看了半天,还是迷糊,上面qingyingqy讲的问题应该不存在.
    我看贴的感想是:打开新页面等于是开始了一次新的会话,SessionID就不同了,程序认为你还没有登陆,所以转到login.aspx去了,是不是这样理解?
    要怎么样让程序"记住"我已经登陆了?
      

  10.   

    我的登陆页面login.aspx:
      if (验证通过)
          {
             System.Web.Security.FormsAuthentication.SetAuthCookie(strUsr,false);
                  Response.Redirect("sj.aspx");
           }上面的Response.Redirect("sj.aspx")并没有新开窗口,因此一切正常,如果把这句改成Response.Write("<script>window.open('sj.aspx')</script>"),即新开窗口,就会再次打开登陆页面login.aspx,看来是新开窗口的问题,怎么解决这个问题呢?前面SetAuthCookie(strUsr,false)已经创建了验证cookie了。
      

  11.   

    嘿嘿,如果把SetAuthCookie(strUsr,false)改成SetAuthCookie(strUsr,true),就正常了,这是因为把验证cookie设置了永远有效,看来的确是新开的窗口没有得到验证cookie的问题,但设置为永远有效总不太好吧,不安全,有什么解决办法吗?在新开的窗口里面(如sj.aspx)里面要写什么代码?