Button1.Attributes.Add(
"
onclick
"
,
"
this.value='正在提交中,请等待……';this.disabled=true;
"
+
this
.GetPostBackEventReference(Button1));
编码成自定义控件使用,下载:Control.rar

namespace
Control
{
using System;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls;
public class Button : System.Web.UI.WebControls.Button
{
private string _clientcheck;
private string _textonclick = " 提交中… " ;
protected override void Render(HtmlTextWriter writer)
{
StringBuilder builder = new StringBuilder();
builder.Append( this .OnClientClick);
if ( ! string .IsNullOrEmpty( this ._clientcheck))
{
builder.Append( " if(!( " ).Append( this ._clientcheck).Append( " )) return false; " );
}
if ( ! string .IsNullOrEmpty( this ._textonclick))
{
builder.Append( " this.value=/ "" ).Append(this._textonclick).Append( " / " ; " );
}
builder.Append( " if(null==window.onunload) window.onunload = function(){}; " );
builder.Append( " this.disabled = true; " ).Append( this .Page.GetPostBackEventReference( this ));
this .OnClientClick = builder.ToString();
base .Render(writer);
}
public string ClientCheck
{
set
{
this ._clientcheck = value;
}
}
public string TextOnClick
{
set
{
this ._textonclick = value;
}
}
}
}
namespace Control
{
using System;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls;
public class ImageButton : System.Web.UI.WebControls.ImageButton
{
private string _clientcheck;
protected override void Render(HtmlTextWriter writer)
{
StringBuilder builder = new StringBuilder();
builder.Append( this .OnClientClick);
if ( ! string .IsNullOrEmpty( this ._clientcheck))
{
builder.Append( " if(!( " ).Append( this ._clientcheck).Append( " )) return false; " );
}
builder.Append( " if(null==window.onunload) window.onunload = function(){}; " );
builder.Append( " this.disabled = true; " ).Append( this .Page.GetPostBackEventReference( this ));
this .OnClientClick = builder.ToString();
base .Render(writer);
}
public string ClientCheck
{
set
{
this ._clientcheck = value;
}
}
}
}
{
using System;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls;
public class Button : System.Web.UI.WebControls.Button
{
private string _clientcheck;
private string _textonclick = " 提交中… " ;
protected override void Render(HtmlTextWriter writer)
{
StringBuilder builder = new StringBuilder();
builder.Append( this .OnClientClick);
if ( ! string .IsNullOrEmpty( this ._clientcheck))
{
builder.Append( " if(!( " ).Append( this ._clientcheck).Append( " )) return false; " );
}
if ( ! string .IsNullOrEmpty( this ._textonclick))
{
builder.Append( " this.value=/ "" ).Append(this._textonclick).Append( " / " ; " );
}
builder.Append( " if(null==window.onunload) window.onunload = function(){}; " );
builder.Append( " this.disabled = true; " ).Append( this .Page.GetPostBackEventReference( this ));
this .OnClientClick = builder.ToString();
base .Render(writer);
}
public string ClientCheck
{
set
{
this ._clientcheck = value;
}
}
public string TextOnClick
{
set
{
this ._textonclick = value;
}
}
}
}
namespace Control
{
using System;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls;
public class ImageButton : System.Web.UI.WebControls.ImageButton
{
private string _clientcheck;
protected override void Render(HtmlTextWriter writer)
{
StringBuilder builder = new StringBuilder();
builder.Append( this .OnClientClick);
if ( ! string .IsNullOrEmpty( this ._clientcheck))
{
builder.Append( " if(!( " ).Append( this ._clientcheck).Append( " )) return false; " );
}
builder.Append( " if(null==window.onunload) window.onunload = function(){}; " );
builder.Append( " this.disabled = true; " ).Append( this .Page.GetPostBackEventReference( this ));
this .OnClientClick = builder.ToString();
base .Render(writer);
}
public string ClientCheck
{
set
{
this ._clientcheck = value;
}
}
}
}
web.config配置
<
pages
>
< controls >
< add tagPrefix = " cc " namespace = " Control " assembly = " Control " />
</ controls >
</ pages >
< controls >
< add tagPrefix = " cc " namespace = " Control " assembly = " Control " />
</ controls >
</ pages >
单独使用:
<cc:Button ID="Button1" runat="server" Text="Button" ClientCheck="Check()" OnClick="Button1_Click"/>
验证控件和js同时使用
<cc:Button ID="Button1" runat="server" Text="Button" ClientCheck="Check() && Page_ClientValidate()" OnClick="Button1_Click"/>
其中Check()为自定义js函数