问题描述
HTMLCode<asp:TextBoxID="Name"runat="server"></asp:TextBox><asp:ButtonID="Button1"runat="server"OnClick="Button1_Click"Text="确认并提交"/>C#Code这部分代码是在网上查到的资料,也可以正确提交,但就是在提交的时候,会有一个错语提示:对像不支持此属性或方法Name.Attributes.Add("onkeydown","if(event.keyCode==13){document.all."+Button1.ClientID+".focus();document.all."+Button1.ClientID+".Button1_Click();}");
解决方案
解决方案二:
Button1_Click()改为click()
解决方案三:
Name.Attributes.Add("onkeydown","if(event.keyCode==13){document.all."+Button1.ClientID+".focus();document.all."+Button1.ClientID+".click();}");Button1_Click()是服务器端的处理方法,在前台是不能够直接调用的
解决方案四:
引用1楼niuniuhuang的回复:
Button1_Click()改为click()
网上的资料就是用的click(),提交的时候,没有错误提示,但是我输入回车之后,页面的Button1_Click()(这是一个添加操作)确认执行了,但是页面,还是停留在了添加的时候。
解决方案五:
自已顶一下吧。
解决方案六:
我第一次提交数据,就会提示用户资料已经存在,而且记录还插入数据库了如果我不使用回车提交表单的功能,Name.Attributes.Add....这行代码,就一切正常请大家帮忙看一下吧,都不知道是哪里的问题了C#Code:protectedvoidPage_Load(objectsender,EventArgse){if(!Page.IsPostBack){Name.Attributes.Add("onkeydown","if(event.keyCode==13){document.all."+Button1.ClientID+".focus();document.all."+this.Button1.ClientID+".click();}");}}protectedvoidButton1_Click(objectsender,EventArgse){if(Page.IsValid){stringmyName=Name.Text.Trim();stringmySql="select*fromMac_UnitwhereName='"+myName+"'";DataSetmySet=GetMySet(mySql);if(mySet.Tables[0].Rows.Count>0){Response.Write("提示:“"+myName+"”已经存在,请重新输入!");}else{//事务操作SqlConnectionmyConnection=GetMyConnection();SqlTransactionmyTransaction=myConnection.BeginTransaction();SqlCommandmyCommand=myConnection.CreateCommand();myCommand.Transaction=myTransaction;try{//添加记录myCommand.CommandText="insertintoMac_Unit(Name)values('"+myName+"')";myCommand.ExecuteNonQuery();//获取记录IDmyCommand.CommandText="Select@@Identity";intmyUnitID=Convert.ToInt32(myCommand.ExecuteScalar());//更新记录myCommand.CommandText="updateMac_UnitsetSerial="+myUnitID+"whereUnitID="+myUnitID+"";myCommand.ExecuteNonQuery();//提交事务myTransaction.Commit();Response.Write("提示:操作成功");}catch(Exceptionerror){//回滚事务myTransaction.Rollback();RunDispose();Response.Write("提示:操作失败");Response.Write(error.Message);}}}}