为什么这样使用Button的事件会被执行两次?
sy246 2005-06-28 01:28:05 页面:
function checkUser()
{
if(document.Form1.all.txtUser.value == "")
{
alert('注册号不能为空!');
document.Form1.all.txtUser.focus();
document.Form1.all.txtUser.select();
return;
}
if(document.Form1.all.txtPwd.value == "")
{
alert('密码不能为空!');
document.Form1.all.txtPwd.focus();
document.Form1.all.txtPwd.select();
return;
}
document.Form1.all.txtSucess.value = "T";
}
<tr>
<td width="35%" height="25" align="right"> </td>
<td width="60%"><form name="form2" method="post" action="">
<input name="btnOk" type="button" class="Button" onClick="checkUser();" value=" 确定 " id="btnLogin" runat="server"> <img src="" width="13" height="7" alt=""> <input name="btnCancel" type="button" class="Button" value=" 取消 " onclick='closeWin();'>
</td>
</tr>
后台:
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.btnLogin.ServerClick += new System.EventHandler(this.btnLogin_ServerClick);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void btnLogin_ServerClick(object sender, System.EventArgs e)
{
if(txtSucess.Value=="")
{
return;
}
else
{
AccountControl control = new WebApp.AccountControl();
string msg = control.ProcessLogin(this.txtUser.Value,this.txtEmploy.Value,this.txtPwd.Value); if(msg!="")
{
this.passTxt.Value=msg;
}
else
{
Response.Redirect("myLogin.aspx");
}
}
}