c#如何从根本上防止重复提交相同的数据

 我来答
xiangjuan314
2016-01-18 · TA获得超过3.3万个赞
知道大有可为答主
回答量:2.9万
采纳率:0%
帮助的人:2901万
展开全部
C#禁止重复提交
1:连续2次提交 Button1.Attributes.Add("onclick", "this.value='正在提交中,请等待……';this.disabled=true;" + this.GetPostBackEventReference(Button1));

2:刷新提交: Response.Write(" <script language=javascript> alert( '采购成功 ');window.location.href=window.location.href; </script> ");

也可以做成自定义控件:
/**//// <summary>
/// 只能提交一次的按钮
/// </summary>
public class ButtonSubmitOnce : Button
{
private string _textonclick = "处理中,请稍后。。。";
private string _clientcheck;

protected override void Render(HtmlTextWriter writer)
{
StringBuilder temp = new StringBuilder();

temp.Append(this.OnClientClick);

if (!string.IsNullOrEmpty(_clientcheck)) temp.Append("if(!").Append(_clientcheck).Append(") return false;");

if (!string.IsNullOrEmpty(_textonclick)) temp.Append("this.value=\"").Append(_textonclick).Append("\";");

//this is for the ff
temp.Append("if(null==window.onunload) window.onunload = function(){};");

temp.Append("this.disabled = true;").Append(Page.GetPostBackEventReference(this));

this.OnClientClick = temp.ToString();

base.Render(writer);
}

public string TextOnClick
{
set { _textonclick = value; }
}

public string ClientCheck
{
set { _clientcheck = value; }
}
}
zhoulin777361
2014-11-25 · TA获得超过362个赞
知道小有建树答主
回答量:789
采纳率:40%
帮助的人:299万
展开全部
防止按钮重复按,就开始设置为false,完成方法后true。如果是数据库,就判断数据是否存在,存在就不提交
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式