asp.net 防止二次提交 以及UseSubmitBehavior属性-转
页面上有一个按钮,点击之后提交表单,如果什么都不管的话,用户可以在服务器响应完成之前再次点击,这样就出现了二次提交,后果可大可小。
那么我们应该防止二次点击,就要在用户点第一次之后马上Disable这个按钮。
具体:
按钮代码:
<asp:Button ID="Button1" runat="server" UseSubmitBehavior="false"
OnClick="Button1_Click" Text="Button" OnClientClick="DisableButton(this)" />
Javascript:

<script>
function DisableButton(b) {
b.disabled = true;
b.value = 'Submitting'; } </script>

然后在后台代码里的Button1_Click事件里再做你想做的事情。
我们可以注意到这里是用OnClientClick的属性来调用Javascript从而实现Disable按钮的。开始的时候,我没有加入UseSubmitBehavior属性,就变成了点击按钮只执行客户端的代码,服务器端代码就不执行了。为了解决这个问题,加入了UseSubmitBehavior属性,并且要把他的值设为false。
为什么要设为false呢?简单来说,false表示不用客户端方法提交,则从服务器端提交,也就是执行OnClick的事件。反之,如果是true,则从客户端提交,忽略服务器端的事件。具体请看MSDN:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.usesubmitbehavior.aspx
asp.net 防止二次提交 以及UseSubmitBehavior属性-转的更多相关文章
- asp.net 防止按钮重复提交
1.将按钮属性设置如下: <asp:Button ID="btConfirm" runat="server" Text="Confirm&quo ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- ASP.NET Button控件的UseSubmitBehavior属性引发的血案
这里先不说标题上的UseSubmitBehavior属性是什么,先说下面这种情况. 通常,在我们写一个表单页面的时候,最下方会有“提交”和“返回”字样的两个按钮.顾名思义,它们的功能大家都知道,但是一 ...
- ASP模拟POST请求异步提交数据的方法
这篇文章主要介绍了ASP模拟POST请求异步提交数据的方法,本文使用MSXML2.SERVERXMLHTTP.3.0实现POST请求,需要的朋友可以参考下 有时需要获取远程网站的某些信息,而服务器又限 ...
- 七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递
通过第一天的学习之后,我们相信您已经对MVC有一些基本了解. 本节所讲的内容是在上节的基础之上,因此需要确保您是否掌握了上一节的内容.本章的目标是在今天学习结束时利用最佳实践解决方案创建一个小型的MV ...
- easyui提交表单数据的时候如何防止二次提交
在前端提交数据的时候有时候可能会由于网络延迟等原因,我们在等待的时候会多次点击保存按钮,这可能会导致我们一次输入的数据多次提交,导致数据重复.最近在做项目的时候碰到了这个问题,先说一点,这个问题的解决 ...
- ASP.NET\ASP.NET MVC表单提交遇到的问题结论
同步提交的两种基本方式 1,用type=“submit”按钮.form没有必要runat=“server” <form method="post" action=" ...
- asp.net生成二维码的方法
asp.net生成二维码的方法 [复制链接] 这个要利用一个Dll文件. 如下 Gma.QrCodeNet.Encoding.dll (105.5 KB, 下载次数: 27) 当然大家也可以直 ...
- asp.net mvc表单提交的几种方式
asp.net MVC中form提交和控制器接受form提交过来的数据 MVC中form提交和在控制器中怎样接受 1.cshtml页面form提交2.控制器处理表单提交数据4种方式方法1:使用传统的R ...
随机推荐
- 自底向上归并排序(Merge Sort)
一.思路 另一种实现归并排序的方法是,先归并微型数组,再成对归并得到的子数组,直到将整个数组归并在一起. 我们先进行1-by-1归并,然后2-by-2归并,4-by-4归并,如此下去. 在最后一次归并 ...
- 山东省第七届ACM省赛
ID Title Hint A Julyed 无 B Fibonacci 打表 C Proxy 最短路径 D Swiss-system tournament 归并排序 E The Binding of ...
- Java钉钉开发_00_资源帖
1.源码 本系列教程的源码已上传至GitHub: https://github.com/shirayner/DingTalk_Demo 2.官方 官方源码:https://github.com/op ...
- ADO-添加msado15.dll及基本类对象的了解
一.dll文件的导入 参考文献:https://blog.csdn.net/qq_31209383/article/details/51199762 要使用数据库,首先在stdafx.h中导入msad ...
- OpenCV——百叶窗
参考: PS 图像特效,百叶窗 // define head function #ifndef PS_ALGORITHM_H_INCLUDED #define PS_ALGORITHM_H_INCLU ...
- [原]NYOJ-括号匹配-2(java)
大学生程序代写 //http://acm.nyist.net/JudgeOnline/problem.php?pid=2 括号配对问题 时间限制:3000 ms | 内存限制:65535 KB ...
- performance.timing检测页面加载速度
with(performance){ readyStart = timing.fetchStart - timing.navigationStart; redirectTime = timing.re ...
- Gym - 101196G :That's One Hanoi-ed Teacher (递推)
题意:给定当前汉诺塔的状态,问还有多少步走完,不合法输出“No”. 思路:显然可以一层一层试探下去的.我们设三个柱子为“起始”,“中转”,“终点”,当前状态的最大的盘子不可能在中转站处:如果在起始站, ...
- NYOJ-127 快速求幂,最小生成树
#include"iostream" using namespace std; int kuaisuqiumo(int a,int b,int c){ ; a = a % c; ) ...
- ACM学习历程——UVA 127 "Accordian" Patience(栈;模拟)
Description ``Accordian'' Patience You are to simulate the playing of games of ``Accordian'' patie ...