`

为什么保存后要关闭页面

阅读更多

我是个VB程序员出身,因此做web新增页面时总喜欢在保存之后,直接切换到编辑页面,因为窗体应用就是这样的。直到今天我才恍然大悟,这样是有问题的。

 

当页面跳转到编辑页面,如果用户此时刷新页面,之前的新增提交又会执行一遍,造成了重复提交。而且这种提交对于服务端是无法判断的,因为对于它来说就是一次正常的提交。

 

要避免这种情况发生,最简单的就是提交后,返回成功提示页面,待用户确认后直接关闭页面,不给用户刷新的机会。我想绝大多数WEB程序框架都是这样解决的,但不知是否所有程序员都考虑过为什么会这样,就像我。

 

其实还有一种情况,就是必须返回到编辑页面,不能关闭页面。比如表单需要上传附件,如果上传页是个单独的页面(我喜欢这样处理)。在上传附件之前,我需要将表单进行一下提交,获得主键之后再自动打开上传页,这样才能保证不造成垃圾附件(如果主表单未进行提交操作)。在打开上传页后(非模式打开)用户在主表单上就可以进行刷新(其实不用用户,因为IE会提示你是否允许弹出页,当你允许后,页面就会刷新),要避免这种情况,就需要重定向了。

 

真是自报家丑,高手们请一笑而过,望对新手们有所帮助。

 

分享到:
评论

相关推荐

    js 页面离开,关闭,刷新时提醒保存 简单代码.

    js 页面离开,关闭,刷新时提醒保存 简单代码.

    vue如何在用户要关闭当前网页时弹出提示的实现

    本文介绍了vue如何在用户要关闭当前网页时弹出提示的实现,分享给大家,具体如下: 效果如下图 正常 js 页面处理方式 [removed] = function (e) { e = e || window.event; // 兼容IE8和Firefox 4之前的版本 if ...

    网页加强保存工具(SaveAsPlus)|

    在日常网络浏览中,我们有时会遇到想要保存的网页内容,但默认的"另存为"功能可能无法完整保留网页的全部元素,如JavaScript动态内容、图片、CSS样式等。SaveAsPlus就是为了解决这一问题而生,它能够帮助用户更加...

    利用chromedrvier将网页保存为pdf文件,不显示chrome页面

    在IT行业中,转换网页为PDF文件是一个常见的需求,特别是在数据保存、报告生成或者无纸化办公的场景下。本文将详细讲解如何利用Chrome浏览器的驱动器`chromedriver`来实现这个功能,确保在生成PDF时不显示Chrome页面...

    网童 保存网页

    在日常的互联网使用中,我们可能会遇到想要长期保存的网页,比如一篇重要的文章、研究资料或者有趣的图片集,这时【网童保存网页】就显得非常实用。 网页保存是个复杂的过程,涉及到HTML结构解析、资源下载(如图片...

    一键另存为V2 0 IE小插件 网页文章保存神器(分流)

    卸载前请关闭网页浏览器">提供浏览网页的时候想一键保存某篇网文为文本文件的功能的IE小插件; 1 点击一键另存为安装 exe 2 重启网页浏览器 windows帮助文档 如果开了的话 3 在重新打开的网页或windows帮助文档中...

    js利用IE通过windowopen方式保存网页部分内容到本地

    1. **初始化新窗口**:首先使用`window.open`方法打开一个新窗口,并关闭其默认加载的页面,确保新窗口为空白状态。 2. **构建HTML内容**:在新窗口的`document`对象中写入HTML结构,包括`<html>`、`<head>`、`...

    VC保存网页的功能

    2. **文件操作**:在获取到网页内容后,需要将其保存为本地文件。VC++提供了丰富的文件操作API,如`CreateFile()`用于创建或打开文件,`WriteFile()`用于写入数据,以及`CloseHandle()`关闭文件句柄。考虑到文件名为...

    捕获网页关闭事件

    在网页开发中,有时我们需要在用户关闭浏览器窗口或者标签页时执行特定的操作,例如保存数据、清理资源或者显示警告信息。这就是"捕获网页关闭事件"的重要作用。在这个主题下,我们将深入探讨如何使用JavaScript来...

    网页缓存清除及页面刷新与关闭.doc

    网页缓存清除及页面刷新与关闭 知识点1: 网页缓存的概念 网页缓存是指浏览器将访问过的网页保存到本地缓存中,以便下次访问时可以快速加载。缓存可以分为两种:强制缓存和协商缓存。强制缓存是指浏览器在访问网页...

    JS区分浏览器页面是刷新还是关闭

    代码实现时,需要在页面刷新或关闭时更新LocalStorage中保存的最后离开时间,确保下次判断时可以获取到正确的值。此外,页面卸载时应该执行登出电话系统等清理操作,无论页面是刷新还是关闭。 总之,区分页面刷新和...

    解决word表格边框线不能保存问题

    6. 关闭当前文档,然后重新打开刚刚转换后的文件。你应该会发现表格的边框线已经被正确地保存下来,问题得到了解决。 需要注意的是,进行格式转换可能会丢失一些特定的格式设置,比如页眉、页脚、页码等,所以在...

    将网页保存成pdf文件。

    在IT行业中,转换网页为PDF文件是一项常见的需求,特别是在文档归档、无格式化阅读或打印预览等方面。本篇文章将详细讲解如何使用Python编程语言,结合ChromeDriver工具,实现网页到PDF的转换,并着重讨论如何自定义...

    判断页面是关闭还是刷新的js代码

    在探讨“判断页面是关闭还是刷新的js代码”这一主题时,我们首先需要理解网页生命周期中的几个关键事件:`onload`、`onunload`、`onbeforeunload`以及`onclose`。这些事件在网页加载、卸载或刷新过程中扮演着重要...

    javascript页面关闭事件

    1. **表单数据验证:**当用户填写表单后尚未提交时离开页面,可以弹出提示询问用户是否真的想要离开。 2. **数据同步:**确保数据在用户离开前已经同步到服务器。 3. **清理资源:**释放内存或关闭打开的文件等资源...

    登录时不弹框提示保存密码

    3. **Chrome设置调整**:用户可以在Chrome的设置中全局关闭自动填充密码功能,但这会影响所有网站,不是特定页面的解决方案。 4. **服务器端控制**:在服务器返回登录页面时,通过HTTP头部`X-WebKit-CSP`或`Content...

    vue实现表单未编辑或未保存离开弹窗提示功能

    本文将详细探讨如何利用Vue.js实现一个表单在用户未进行编辑或保存操作的情况下,当用户尝试离开当前页面时,如何通过弹窗提示来阻止用户丢失未保存的数据。 ### Vue.js简介 Vue.js(通常称为Vue)是一个轻量级的...

    教你如何保存网页成脱机文件.docx

    6. **点击保存**:设置完成后,点击“保存”按钮,浏览器会开始处理并打包网页内容,待进度达到100%,浏览器会自动关闭该页面,此时网页就已经保存为MHT文件了。 保存好的MHT文件可以在任意时间,即使在网络断开的...

    JavaScript html js页面刷新之后下拉菜单选中值不变,在按钮提交后保存下拉列表中值不变

    这里使用了`localStorage`来存储选中值,因为它可以在页面关闭后仍能保留数据。 然后,在页面加载时,我们需要检查是否有之前保存的选中值,并设置回下拉菜单: ```javascript window.onload = function() { var ...

    加载ASPX页面时生成HTML文件保存在指定文件夹内

    在完成HTML文件的生成和保存后,页面会进行重定向。这里通过`Response.Redirect`方法实现了页面跳转功能。 ```csharp string taid = this.Label1.Text.ToString().Trim(); string poname = this.Label2.Text....

Global site tag (gtag.js) - Google Analytics