我在后台调用RegisterStartupScript注册脚本,提示用户是否要跳转到另外一个页面,可是问题就来了,跳转到另外一个页面后,一旦用户后退,原来的页面就会又提示脚本信息,

后来自己想了想,用一个变量来判断就可以啦,于是决定用Cookies实现,步骤如下

1.设置Cookies读取的javascript方法

function getcookie(objname) {
//获取指定名称的cookie的值
var arrstr = document.cookie.split("; ");
for (var i = 0; i < arrstr.length; i++) {
var temp = arrstr[i].split("=");
if (temp[0] == objname) return unescape(temp[1]);
}
}

2.设置Cookies为1,判断如果是1就弹出确认框

if (list.Count() > )
{
Response.Cookies["state"].Value = ""; ScriptManager.RegisterStartupScript(this, this.GetType(), "confirm", "if(getcookie('state')=='1'){if(confirm('该单据已经有下游单据,是否查看?'))"
+ this.ClientScript.GetPostBackEventReference(this, "yes_" + list[].KID)
+ "; else " + this.ClientScript.GetPostBackEventReference(this, "no_" + purchaseid) + ";};", true);
}

3.回调时,设置Cookies为2,这样提示框判断不是1,就不会再提示了

public void RaisePostBackEvent(string eventArgument)
{
Response.Cookies["state"].Value = "";
if (eventArgument.Contains("yes"))
{
int id = Convert.ToInt32(eventArgument.Split('_')[]);
Response.Redirect("PurchaseStockInfo_Edit.aspx?type=look&id=" + id);
}
}

关于页面刷新判断,我博客还有另外一片文章,需要的可以去看下,两篇文章加起来 就基本解决常用的一些页面刷新,重复提示等问题,希望可以帮到有需要的同学

用了好一段时间才整理出来的,要转载的童鞋记得保留我的链接哦http://www.cnblogs.com/linyijia/p/3503623.html

RegisterStartupScript 后退重复提示解决方法的更多相关文章

  1. VS使用过程中,编写JS没有智能提示解决方法

    问题:编写基本Script代码没有问题,但是在编写DOM代码时候没有智能提示.也就是在编写一般javascript代码时候没有问题,但是要写DOM代码的时候发现没有智能提示,如document等都需要 ...

  2. 【系统Configmachine.config与自己的应用程序的App.config/Web.Config配置节点重复】解决方法

    自己的应用程序的App.config或Web.Config文件中与系统的C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Configmachine.co ...

  3. MVC Ajax.BeginForm重复提交解决方法

    mvc使用MVC Ajax.BeginForm提交的时候有重复提交结果的时候检查相关js文件引用情况, 其中mvc4注意 1 2 3 4 @Scripts.Render("~/bundles ...

  4. 表格线边框重复css解决方法

    1.td 的边框和table 的边框重叠 .table { border-left:1px solid #dedede; border-top:1px solid #dedede;} .td { bo ...

  5. 【问题篇四】SpringBoot的properties文件不能自动提示解决方法(1)

    一.Eclipse 解决方法:Eclipse中安装Spring Tools Suite(STS). 这里采用离线安装的方式. 1. 官网:https://spring.io/tools3/sts/al ...

  6. jquery on()方法重复绑定解决方法

    最近再一次项目中发现 不刷新页面的情况下使用on()方法绑定事件会出现重复执行的问题,意思就是说点击一次会绑定一次...点击n次会绑定n次,执行起来是以你绑定的次数为准,绑定了n次就会执行n次 解决办 ...

  7. CAD出现向程序发送命令时出现问题提示解决方法分享

    大家有没有遇到在使用cad打开图纸的时候提示向程序发送命令时出现错误的情况呢,如果你在使用cad的时候出现了这个提示,是由于软件的兼容性出现了问题,那么该怎么办呢,下面小编就给大家带来cad打开图纸提 ...

  8. MVC 中使用log4net 打印重复日志解决方法

    最近在项目中引用log4net 来打印日志,会发现在同一时间点 打印重复记录: 详见图

  9. android 关于Toast重复显示解决方法

    解决思路:   不用计算Toast的时间之类的,就是定义一个全局的成员变量Toast, 这个Toast不为null的时候才去make,否则直接setText.为了按返回键后立即使Toast不再显示,重 ...

随机推荐

  1. phpsso 与 Discuz!

    经过测试仍然有问题,phpcms登陆,论坛可以实现同步登陆,但论坛登陆phpcms无法同步登陆.但总体来说也能使用了.如果有更好的方法欢迎补充. 整合原理: UCenter 作服务端:phpsso 与 ...

  2. xcode_6_beta.dmg

    http://pan.baidu.com/s/1qW2lWoW password:5nty

  3. Flutter混合工程改造实践

    背景 6月下旬,我们首次尝试用Flutter开发AI拍app.开发的调研准备阶段没有参考业界实践,导致我们踩到一些填不上的坑.在这些坑中,最让我感到棘手的是Flutter和原生页面混合栈管理的问题. ...

  4. 如何配置 Oracle VirtualBox 中的客户机与物理机网络

    当你在 Oracle VirtualBox 虚拟机软件 中安装了各种操作系统时,你可能需要实现物理机与虚拟机之间的相互访问. 在这篇文章中,我们将会以最简单明了的方式来说明如何配置客户机与 Linux ...

  5. C#调取java接口

    1. public class APIRequest    {       //public static string commonUrl = @"http://192.168.2.186 ...

  6. java基础学习总结——GUI编程(一) 还未仔细阅读

    一.AWT介绍

  7. sqlserver学习笔记(五)—— 查询

    查询的基本语法结构: select 列名/* from 表名 [where 限制条件] [order by 排序] 1.查询全部的行和列: select * from 表名 2.查询部分行和列:(部分 ...

  8. EMQ 学习---MQTT消息QoS

    MQTT发布消息QoS保证不是端到端的,是客户端与服务器之间的.订阅者收到MQTT消息的QoS级别,最终取决于发布消息的QoS和主题订阅的QoS. 客户端连接: 客户端完成TCP三次握手之后,还需要发 ...

  9. 非变动性算法源代码分析与使用示例( for_each、min_element 、find_if、search 等)

    非变动性算法代码分析与示例: 一.for_each  C++ Code  1 2 3 4 5 6 7 8 9 10 11 12 13 14   // TEMPLATE FUNCTION for_eac ...

  10. 如何用C#做一个悬浮窗口程序

    用C#做一个像FlashGet的悬浮窗口,其实很简单,不像以前需要调用很多系统API.大致的步骤如下. 首先是主窗体部分,即要判断窗体的状态来决定是否显示悬浮窗口. 局部成员声明: private F ...