添加修改后返回刷新查询页面

    问题如题,如果返回的不是查询页面而是一个单纯的列表页面也就容易了网上有好多解决方法都是很不错的,可问题是现在返回要刷新的是一个查询页。不但要记录查询条件还要记录GridView的当前页。(下面A为查询页,B为修改页)
    试过很多方法,比如在地址栏里传参数、Session里存放参数、禁用缓存、Server.Transfer()传参、弹出也面等都不能实现全部功能。最后想到了下面的办法虽不是很完美但实现了所要求的功能。
    第一步:
    在A页面添加一个HidenField设ID为hdRefresh,用来记录页面是否需要重新提交。
    再添加一个HidenField设ID为hdCurrentPage,用来记录查询的时候是否需要记录GridView的当前页。
    在page的onload事件里调用Refresh()方法,代码如下:
      < asp:HiddenField  ID ="hdRefresh"  runat ="server"  Value ="false"   />
     
< asp:HiddenField  ID ="hdCurrentPage"  runat ="server"  Value ="false"   />
     
< script  language ="javascript"  type ="text/javascript" >
      
function Refresh()
      
{
           
var hdRefresh = document.getElementById("hdRefresh");
           
var hdCurrentPage = document.getElementById("hdCurrentPage");
           
if(hdRefresh.value == "false")
           
{
              hdRefresh.value 
= "true";     
           }

           
else
           
{
              
//window.location.reload();
              hdCurrentPage.value = "true";
              document.form1.submit();
           }

       }

    
</ script >

    第二步:
    页面Page_Load的时候设hdRefresh.Value = "false"并判断是否执行查询。
     protected   void  Page_Load( object  sender, EventArgs e)
    
{
        
if (!Page.IsPostBack)
        
{
            Query();
        }

        
if (hdCurrentPage.Value == "true")
        
{
            Query(GvPageSet1.CurrentInfo);
            hdCurrentPage.Value 
= "false";
        }

        hdRefresh.Value 
= "false";
    }

    
    第三步:
    A页面GridView中的编辑和添加HypeLink不能使用GridView本身的OnRowEditing和OnRowDeleting要写成如下形式否则用submit()提交页面的时候会出问题的。
< asp:TemplateField  ShowHeader ="False"  Visible ="true" >
 
< ItemTemplate >
    < asp:HyperLink  ID ="HyperLink1"  runat ="server"  NavigateUrl ='<%#  "BillEdit.aspx?ID ="+Eval(" ID") % > ' DataNavigateUrlFields="ID" Text="编辑" Target="_self"> </ asp:HyperLink >
 
</ ItemTemplate >
</ asp:TemplateField >
    第四步:
    B页面里用history.go(-?)返回A页面。
    到这里就算是完成任务了,这个方法有一个不好的地方就是利用history.go返回页面后马上就会再次提交页面所以给人一种页面闪了一下的感觉。

转载于:https://www.cnblogs.com/hongyuniu/archive/2008/07/01/1232886.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值