0

我有一个在线表格,其中有许多文本框,包括电子邮件 ID、密码和其他详细信息。当用户没有输入正确的信息时。我正在显示以下代码中显示的错误消息。我正在使用 SQL 的返回值。我正在尝试清除每个按钮单击的标签。谁能帮我?

protected void Button1_Click(object sender, EventArgs e)
    {
        {

            {
                SqlConnection sqlCon = new SqlConnection(strCon);
                SqlCommand cmd = new SqlCommand("UpdateRequestAccess_Test", sqlCon);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.CommandText = "UpdateRequestAccess_Test";
                cmd.Connection = sqlCon;

                ----------Parameters are declared here--------

                SqlParameter rpv = new SqlParameter();
                rpv.DbType = DbType.Int32;
                rpv.Direction = ParameterDirection.ReturnValue;

                cmd.Parameters.Add(rpv);
                try
                {
                    sqlCon.Open();
                    cmd.ExecuteScalar();

                    int retValue = Convert.ToInt32(rpv.Value);


                        if (retValue == 10)
                            lblMessage.Text = "Request was sent successfully!";

                        if (retValue == 11)
                            Label2.Text = "*Email Address is already registered.";

                        if (retValue == 12)
                            Label3.Text = "*Passwords do not match.";

                        if (retValue == 13)
                            Label4.Text = "Sorry, Your application was already denied earlier.";

                        if (retValue == 14)
                            Label5.Text = "*Please select an option 'Yes' or 'No' under Select Online Tools.";

                        if (retValue == 15)
                            Label6.Text = "*Please enter the information in the text boxes above.";

                        if (retValue == 15)
                            Label7.Text = "*Please Select an option from the dropdown above.";

                }

                catch (Exception ex)
                {

                        lblMessage.Text = ex.Message;

                        Label2.Text = ex.Message;

                        Label3.Text = ex.Message;

                        Label4.Text = ex.Message;

                        Label5.Text = ex.Message;

                        Label6.Text = ex.Message;

                        Label7.Text = ex.Message;

                }

            }
        }

    }
4

4 回答 4

1

尝试..

lblMessage.Text = "";
Label2.Text = "";
Label3.Text = "";
Label4.Text = "";
Label5.Text = "";
Label6.Text = "";
Label7.Text = "";
于 2013-11-12T01:34:11.863 回答
1
lblMessage.Text = ex.Message;
Label2.Text = ex.Message;
Label3.Text = ex.Message;
Label4.Text = ex.Message;
Label5.Text = ex.Message;
Label6.Text = ex.Message;
Label7.Text = ex.Message;

尝试在代码的开头添加这些行,就try在 try-catch 语句的上方。

或者你可以做

Label7.Clear(); 

虽然不确定语法,但我是 vb.net 程序员:)

于 2013-11-19T06:52:55.307 回答
1

把 ClearTextMsg(); 进入您的页面加载事件。

如果您在页面加载中使用 if(!IsPostBack) { } 代码块,则将其放在一边。

完美位置是页面加载事件的第一行。喜欢以下

protected void Page_Load(object sender, EventArgs e)
{
     ClearTextMsg();
     if (!IsPostBack)
     {
        // any valid c# statments
     }
}

// call this function
private void ClearTextMsg()
{
lblMessage.Text = "";
Label2.Text = "";
Label3.Text = "";
Label4.Text = "";
Label5.Text = "";
Label6.Text = "";
Label7.Text = "";
}
于 2013-11-21T07:14:23.280 回答
1

更新您的按钮单击事件,如下所示

protected void Button1_Click(object sender, EventArgs e)
{
                    lblMessage.Text = string.Empty;

                    Label2.Text = string.Empty;

                    Label3.Text = string.Empty;

                    Label4.Text = string.Empty;

                    Label5.Text = string.Empty;

                    Label6.Text = string.Empty;

                    Label7.Text = string.Empty;


    {

        {
            SqlConnection sqlCon = new SqlConnection(strCon);
            SqlCommand cmd = new SqlCommand("UpdateRequestAccess_Test", sqlCon);
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "UpdateRequestAccess_Test";
            cmd.Connection = sqlCon;

            ----------Parameters are declared here--------

            SqlParameter rpv = new SqlParameter();
            rpv.DbType = DbType.Int32;
            rpv.Direction = ParameterDirection.ReturnValue;

            cmd.Parameters.Add(rpv);
            try
            {
                sqlCon.Open();
                cmd.ExecuteScalar();

                int retValue = Convert.ToInt32(rpv.Value);


                    if (retValue == 10)
                        lblMessage.Text = "Request was sent successfully!";

                    if (retValue == 11)
                        Label2.Text = "*Email Address is already registered.";

                    if (retValue == 12)
                        Label3.Text = "*Passwords do not match.";

                    if (retValue == 13)
                        Label4.Text = "Sorry, Your application was already denied earlier.";

                    if (retValue == 14)
                        Label5.Text = "*Please select an option 'Yes' or 'No' under Select Online Tools.";

                    if (retValue == 15)
                        Label6.Text = "*Please enter the information in the text boxes above.";

                    if (retValue == 15)
                        Label7.Text = "*Please Select an option from the dropdown above.";

            }

            catch (Exception ex)
            {

                    lblMessage.Text = ex.Message;

                    Label2.Text = ex.Message;

                    Label3.Text = ex.Message;

                    Label4.Text = ex.Message;

                    Label5.Text = ex.Message;

                    Label6.Text = ex.Message;

                    Label7.Text = ex.Message;

            }

        }
    }

}
于 2013-12-13T10:23:00.780 回答