各位大哥,我有下面的问题请教:
我的一个页面中有一个DataGrid,通过点击DataGrid的行来弹处一个模态窗口
用window.showModalDialog()的方法打开一个模态窗口,对一条记录进行编辑,编辑保存成功,但我再点击该行,显示刚才打开的模态窗口的时候,发现模态窗口所在页面的Page_Load事件没有被执行,结果就是模态窗口中显示的数据还是编辑以前的数据。这是怎么回事啊?是不是模态窗口会有什么缓存的啊

解决方案 »

  1.   

    webform or winform?如果是webform的话,你应该在js弹出模式窗口中,进行submit操作;
    如果是winform的话,你可以参看
    http://blog.csdn.net/knight94/archive/2006/04/14/663300.aspx
      

  2.   

    是WebForm。
    下面这句话是什么意思啊?:
    如果是webform的话,你应该在js弹出模式窗口中,进行submit操作;
      

  3.   

    //in your js function
    var strTemp = window.showModalDialog( yourOpenUrl,'dialogWidth=200px,dialogHeight=80px;' );
    if(strTemp != null) 
    {
    document.yourForm.submit();//Submit current page
    }
      

  4.   

    楼上的大哥你可能没有理解我的问题。
    现在我有两个表单:form1,form2,
    我在form1写代码:window.showModalDialog('form2.aspx','dialogWidth=200px,dialogHeight=80px;' );
    然后在弹出的form2中的Page_Load事件中载入当前记录,并可以编辑数据,保存,返回到form1,到这里都没有问题的。问题出现在,我再次点击被修改过的记录,弹出form2的时候,form2中的数据还是修改前的数据,不是修改后的数据,并且发现form2中的Page_Load事件 没有执行
      

  5.   

    那当然,因为都是在js中操作,你的form1并没有刷新,所以数据没有更新,所以你必须在fs打开窗体后,根据返回值重新刷新此页面。
      

  6.   

    模态窗口 .aspx.csPage_Load()
    {
       Response.Expires = -1;