一个很普通的数据提交页面,不知怎地在每个TextBox里输入数据后一打回车键后整个页面就像重新加载一样全部TextBox的内容都清空了。怪哉?
页面前台代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Vehicle_Add.aspx.cs" Inherits="Vehicle_Add" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>车辆管理 -- 添加信息</title>
    <link href="../css/Admin_Style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
    <div>
        <table width="800" border="0" cellspacing="0" cellpadding="0" align="center">
            <tr>
                <td valign="top" style="width: 100%;" align="left">
                    <table width="100%" height="57" border="0" cellpadding="0" cellspacing="0" style="border: 1px solid #CCCCCC;">
                            <tr>
                                <td width="100%" background="../images/cxy_16.jpg">
                                    <table width="98%" height="39" border="0" align="center" cellpadding="0" cellspacing="0">
                                        <tr>
                                            <td>&nbsp;
                                          </td>
                                            <td width="87" align="center" class="an">
                                                <asp:ImageButton ID="ImageButton1" ImageUrl="~/images/mybutton/Vehicle_Add.jpg" runat="server" OnClick="ImageButton1_Click" /></td>
                                            <td width="3" align="center">&nbsp;
                                          </td>
                                            <td width="87" align="center" class="an">
                                                <asp:ImageButton ID="ImageButton2" ImageUrl="~/images/mybutton/Vehicle_QueryList.jpg"
                                                    runat="server" OnClick="ImageButton2_Click" /></td>
                                            <td width="3" align="center">&nbsp;
                                          </td>
                                          <td width="87" align="center" class="an">
                                                <asp:ImageButton ID="ImageButton3" ImageUrl="~/images/mybutton/Vehicle_EditList.jpg" runat="server"
                                                    OnClick="ImageButton3_Click" /></td>

                                        </tr>
                                    </table>
                                </td>
                            </tr>
                    </table>
                    </td>
     </tr>  
</table>
            <table width="800" border="0" cellpadding="0" cellspacing="1" bgcolor="#DCE3E9" style="margin-top:4px;">
<tr>
  <td width="122" height="20" align="center" bgcolor="#F2F9FF">车型:</td>
  <td width="251" bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_Brand" runat="server"></asp:TextBox></td>
  <td width="121" align="center" bgcolor="#F2F9FF">车牌:</td>
  <td width="301" bgcolor="#FFFFFF" align="left"> <asp:TextBox ID="txt_BoardNo" runat="server"></asp:TextBox></td>
</tr>
<tr>
  <td height="20" align="center" bgcolor="#F2F9FF">车架编号:</td>
  <td bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_BodyNo" runat="server"></asp:TextBox></td>
  <td align="center" bgcolor="#F2F9FF">发动机编号:</td>
  <td bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_EngineNo" runat="server"></asp:TextBox></td>
    </tr>
<tr>
  <td height="20" align="center" bgcolor="#F2F9FF">用油标准:</td>
  <td bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_OilConsume" runat="server"></asp:TextBox></td>
  <td align="center" bgcolor="#F2F9FF">所属部门:</td>
  <td bgcolor="#FFFFFF" align="left">
                      <asp:TextBox ID="txt_Department" runat="server" ReadOnly="True"></asp:TextBox></td>
    </tr>
<tr>
  <td height="20" align="center" bgcolor="#F2F9FF">保险费:</td>
  <td bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_Insurance" runat="server"></asp:TextBox></td>
  <td align="center" bgcolor="#F2F9FF">交强险:</td>
  <td bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_TrafficTax" runat="server"></asp:TextBox></td>
  </tr>
<tr>
  <td height="20" align="center" bgcolor="#F2F9FF">车船税:</td>
  <td bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_VehicleTax" runat="server"></asp:TextBox></td>
  <td align="center" bgcolor="#F2F9FF">杂费:</td>
  <td bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_OtherFee" runat="server"></asp:TextBox></td>
  </tr>
<tr>
  <td height="20" align="center" bgcolor="#F2F9FF">购置日期:</td>
  <td colspan="3" bgcolor="#FFFFFF" align="left"><asp:TextBox ID="txt_BuyDate" runat="server" Width="100px" ></asp:TextBox><asp:Image
              ID="Image1" runat="server" ImageUrl="~/App/Images/ico/calendar.gif" />
          &nbsp;<ajaxToolkit:CalendarExtender
                  ID="CalendarExtender1" runat="server" Format="yyyy-MM-dd" PopupButtonID="Image1"
                  TargetControlID="txt_BuyDate">
              </ajaxToolkit:CalendarExtender></td>
  </tr>
<tr>
  <td height="20" align="center" bgcolor="#F2F9FF">&nbsp;</td>
  <td colspan="3" bgcolor="#FFFFFF" align="left"><asp:Button ID="btn_Submit" runat="server" OnClientClick="return confirm('您确认要提交吗?');"
                        Text="提交" OnClick="btn_Submit_Click" /></td>
  </tr>
  </table>
   </div>
    </form>
</body>
</html>请高手帮看一看。谢谢!

解决方案 »

  1.   

    后台代码如下:
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Text;public partial class Vehicle_Add : Com.TY.BLL.BasePage
    {
        SqlData db = new SqlData();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                string sql = "Select Department_Name, Department_ID from tb_Department inner join tb_User on User_Department_ID = Department_ID";
                this.txt_Department.Text = db.GetDataSet(sql, "table").Tables[0].Rows[0][0].ToString();
                this.txt_Brand.Focus();
            }
        }    protected void btn_Submit_Click(object sender, EventArgs e) //提交
        {
            if (this.txt_Brand.Text.Trim() == "")
            {
                db.FixedShow(this, "车型不能为空!");
                return;
            }
            if (this.txt_BoardNo.Text.Trim() == "")
            {
                db.FixedShow(this, "车牌不能为空!");
                return;
            }
            if (this.txt_BodyNo.Text.Trim() == "")
            {
                db.FixedShow(this, "车架编号不能为空!");
                return;
            }
            if (this.txt_EngineNo.Text.Trim() == "")
            {
                db.FixedShow(this, "发动机编号不能为空!");
                return;
            }        StringBuilder strSql = new StringBuilder();
            strSql.Append("insert into [tb_Vehicle](");
            strSql.Append("Vehicle_Brand,Vehicle_BoardNo,Vehicle_BodyNo,Vehicle_EngineNo,Vehicle_OilConsume,Vehicle_DepartmentID,Vehicle_Insurance,Vehicle_TrafficTax,Vehicle_VehicleTax,Vehicle_OtherFee,Vehicle_BuyDate");
            strSql.Append(")");
            strSql.Append(" values (");
            strSql.Append("'" + this.txt_Brand.Text + "',");
            strSql.Append("'" + this.txt_BoardNo.Text + "',");
            strSql.Append("'" + this.txt_BodyNo.Text + "',");
            strSql.Append("'" + this.txt_EngineNo.Text + "',");
            strSql.Append("" + this.txt_OilConsume.Text + ",");
            strSql.Append("" + userInfo.DepartmentID + ",");
            strSql.Append("" + this.txt_Insurance.Text + ",");
            strSql.Append("" + this.txt_TrafficTax.Text + ",");
            strSql.Append("" + this.txt_VehicleTax.Text + ",");
            strSql.Append("" + this.txt_OtherFee.Text + ",");
            strSql.Append("'" + this.txt_BuyDate.Text + "'");
            strSql.Append(")");
            strSql.Append(";");
            string sql = strSql.ToString();
            if (db.ExecSQL(sql))
            {
                db.ShowAndRedirect(this, "车辆信息提交成功!", "Vehicle_QueryList.aspx");
            }
            else
            {
                db.FixedShow(this, "车辆信息提交失败!");
            }
        }    protected void ImageButton1_Click(object sender, ImageClickEventArgs e) //车辆添加
        {
            Server.Transfer("~/app/Vehicle_Add.aspx");
        }    protected void ImageButton2_Click(object sender, ImageClickEventArgs e) //车辆查询列表
        {
            Server.Transfer("~/app/Vehicle_QueryList.aspx");
        }    protected void ImageButton3_Click(object sender, ImageClickEventArgs e) //车辆编辑列表
        {
            Server.Transfer("~/app/Vehicle_EditList.aspx");
        }
    }
      

  2.   

    后台代码如下:
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Text;public partial class Vehicle_Add : Com.TY.BLL.BasePage
    {
        SqlData db = new SqlData();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                string sql = "Select Department_Name, Department_ID from tb_Department inner join tb_User on User_Department_ID = Department_ID";
                this.txt_Department.Text = db.GetDataSet(sql, "table").Tables[0].Rows[0][0].ToString();
                this.txt_Brand.Focus();
            }
        }    protected void btn_Submit_Click(object sender, EventArgs e) //提交
        {
            if (this.txt_Brand.Text.Trim() == "")
            {
                db.FixedShow(this, "车型不能为空!");
                return;
            }
            if (this.txt_BoardNo.Text.Trim() == "")
            {
                db.FixedShow(this, "车牌不能为空!");
                return;
            }
            if (this.txt_BodyNo.Text.Trim() == "")
            {
                db.FixedShow(this, "车架编号不能为空!");
                return;
            }
            if (this.txt_EngineNo.Text.Trim() == "")
            {
                db.FixedShow(this, "发动机编号不能为空!");
                return;
            }        StringBuilder strSql = new StringBuilder();
            strSql.Append("insert into [tb_Vehicle](");
            strSql.Append("Vehicle_Brand,Vehicle_BoardNo,Vehicle_BodyNo,Vehicle_EngineNo,Vehicle_OilConsume,Vehicle_DepartmentID,Vehicle_Insurance,Vehicle_TrafficTax,Vehicle_VehicleTax,Vehicle_OtherFee,Vehicle_BuyDate");
            strSql.Append(")");
            strSql.Append(" values (");
            strSql.Append("'" + this.txt_Brand.Text + "',");
            strSql.Append("'" + this.txt_BoardNo.Text + "',");
            strSql.Append("'" + this.txt_BodyNo.Text + "',");
            strSql.Append("'" + this.txt_EngineNo.Text + "',");
            strSql.Append("" + this.txt_OilConsume.Text + ",");
            strSql.Append("" + userInfo.DepartmentID + ",");
            strSql.Append("" + this.txt_Insurance.Text + ",");
            strSql.Append("" + this.txt_TrafficTax.Text + ",");
            strSql.Append("" + this.txt_VehicleTax.Text + ",");
            strSql.Append("" + this.txt_OtherFee.Text + ",");
            strSql.Append("'" + this.txt_BuyDate.Text + "'");
            strSql.Append(")");
            strSql.Append(";");
            string sql = strSql.ToString();
            if (db.ExecSQL(sql))
            {
                db.ShowAndRedirect(this, "车辆信息提交成功!", "Vehicle_QueryList.aspx");
            }
            else
            {
                db.FixedShow(this, "车辆信息提交失败!");
            }
        }    protected void ImageButton1_Click(object sender, ImageClickEventArgs e) //车辆添加
        {
            Server.Transfer("~/app/Vehicle_Add.aspx");
        }    protected void ImageButton2_Click(object sender, ImageClickEventArgs e) //车辆查询列表
        {
            Server.Transfer("~/app/Vehicle_QueryList.aspx");
        }    protected void ImageButton3_Click(object sender, ImageClickEventArgs e) //车辆编辑列表
        {
            Server.Transfer("~/app/Vehicle_EditList.aspx");
        }
    }
      

  3.   

    看看js中是否有if(event.keyCode == 13)
    等代码,这个是回车键激活的js代码
      

  4.   

    auto postback 是否设置了
      

  5.   

    回车时系统缺省提交了按钮,把回车替换为tab或禁止回车
      

  6.   

    我用断点跟踪了一下,在前台的TextBox控件上输入信息后直接敲回车键,是在后台的 if (!IsPostBack){}位置中断的。为什么按回车会在这里中断呢?请高手给解释一下。谢谢!
      

  7.   

    按回车触发了提交事件
    page_load{
    Page.Form.DefaultButton = null;
    }