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; }
}
}
|
C#禁止重复提交
最新推荐文章于 2022-05-10 09:58:23 发布