请教各位一个问题:
    在.net 2005里面,我在父页面上有一个GridView,和一个button,单击button,弹出一个子页面,里面录入数据保存后,在父页面就自动刷新将刚录入的数据在GridView里面显示出来。
    原先在.net 2003中,我在子页面的保存按钮响应函数里面使用“Response.Write("<script language='javascript'>window.close();window.opener.Form1.ButtonQuery.click();</script>");”来达到这个目的,在.net 2005中类似的做法达不到自动刷新的目的。请问这是什么原因? 要想达到自动刷新的问题,应该如何做?谢谢

解决方案 »

  1.   

    在子页响应事件中重载父页就行 但关闭事件在流程上应该放在重载的后面 最后用注册脚本而非页面直接输出 
    如下
    Page.RegisterStartupScript("myReload","<script language='javascript'> window.opener.location.reload();window.close(); </script> ");”
      

  2.   

    你是不是使用了UpdatePanel之类的ajax控件,我看你的代码基本是没有问题的,你最好把代码贴全一点!
      

  3.   

    <script>window.opener.location=window.opener.location;</script>reload()不太好..呵呵.lz的这个也是没问题的->window.opener.Form1.ButtonQuery.click(); 
      

  4.   

    楼主的做法基本没问题的window.location.reload()
    如果是使用form提交的生成的页面,会出现ie提示
      

  5.   

    我在.net 2005下使用类似的方法不能实现刷新父页面;使用2楼仁兄的方法也不行呢。
      

  6.   


    Response.Write("<script language='javascript'> window.opener.location.reload();window.close(); </script> ");
      

  7.   

    你子窗體時關閉了 但父窗體沒刷新 也就是說JS腳本執行了window.close(); 沒執行reload(); 你在看看window.opener.location.reload(); 有沒有拼寫錯誤 大小寫區分好
      

  8.   

     在.net 2005里面,我在父页面上有一个GridView,和一个button,单击button,弹出一个子页面,里面录入数据保存后,在父页面就自动刷新将刚录入的数据在GridView里面显示出来。 
        原先在.net 2003中,我在子页面的保存按钮响应函数里面使用“Response.Write(" <script language='javascript'> window.close();window.opener.Form1.ButtonQuery.click(); </script> ");”来达到这个目的,在.net 2005中类似的做法达不到自动刷新的目的。请问这是什么原因? 要想达到自动刷新的问题,应该如何做?谢谢
    =======================================
    上面这个问题还是没解决,给出的方法有问题。
    我还是要达到这个效果,子页面录入数据后,父页面立即就可以把刚录入的数据显示出来 不要整个页面刷新,只需要GridView刷新就可以了,使用脚本"window.opener.location.reload();",使得整个页面刷新,效果不好。 
      

  9.   

    你把button换成<a href="child.aspx">代开</a>然后使用脚本就没有问题了
      

  10.   

    上面这个问题还是没解决,给出的方法有问题。 
    我还是要达到这个效果,子页面录入数据后,父页面立即就可以把刚录入的数据显示出来 不要整个页面刷新,只需要GridView刷新就可以了,使用脚本"window.opener.location.reload();",使得整个页面刷新,效果不好。 
    局部刷新只能使用ajax
    没有别的方法
      

  11.   

    window.opener.Form1.ButtonQuery.click(); 
    你看下click执行了没