0

我需要创建一个网络表单,用户可以在其中添加、更新、删除、从 SQL 数据库中的表中检索客户数据。

表中的每个字段都应该有文本框,以便用户可以输入字段的详细信息以更新数据库中的表。

我遇到的问题是表单背后的代码,我需要制定一个明确的方法来清除所有文本框和消息标签。我还需要为每个文本框设置验证要求。但我不确定如何正确执行此操作。

文本框是;

CustID、名字、姓氏、性别、年龄、地址 1、地址 2、城市、电话、手机、电子邮件、确认电子邮件。

现在我的主要问题是,我如何验证文本框?例如; 客户 ID 是必需的。& 必须是唯一的。必须是整数,并且必须介于 1 和 1000 之间。

4

5 回答 5

2

例如,您应该使用 RequiredValidator

http://www.w3schools.com/aspnet/control_reqfieldvalidator.asp

这将在向服务器提交数据之前执行验证;)

还有其他类型的验证器,例如 RangeValidator(用于检查整数是否在 1 到 1000 之间)。

例子:

<asp:RangeValidator ControlToValidate="youtField" MinimumValue="1" MaximumValue="1000" Type="Integer" Text="The field must be between 1 and 1000" runat="server" />

例如,您还可以将 ValidationGroup="save" 添加到所有验证器以及用户应单击以保存和更新数据的按钮。

于 2013-10-21T08:40:45.430 回答
1

Asp.net 有一些(5 种主要类型)服务器验证控件,您可以根据需要使用验证

请参阅此图片以了解验证控件(图片来自

在此处输入图像描述

这个MSDN sat3的更多理解

这里是所有验证控制样本的链接:点击我

于 2013-10-21T08:46:25.957 回答
0

您可以通过将用户重定向到另一个页面告诉他表单已提交,New Registration按钮将用户再次重定向到注册页面来清除所有控件值,但是如果您不希望您可以拿起每个控件并在其中重置它们Cs.file 或使用 javascript,

foreach (Control ctrl in form1.Controls)
        {
            if (ctrl is TextBox)
            {
                TextBox tb = (TextBox)ctrl;
                tb.Text = string.Empty;
            }
            else if (ctrl is DropDownList)
            {
                DropDownList dl = (DropDownList)ctrl;
                dl.SelectedIndex = 0;
            }
            else if (ctrl is CheckBox)
            {
                CheckBox cb = (CheckBox)ctrl;
                cb.Checked = false;
            }
        }

为了您的验证目的,我强烈建议您阅读validationAsp.net,这是一个很好的教程,您可以从这里学习

于 2013-10-21T08:57:36.740 回答
0

这里可能是 ASP/MVC 的示例 - 因为您忘记指定来自 ASP 的技术。表单或 MVC ?!? 这适用于 mvc,其他属性已经由我之前的用户定义。

注意,RemoteAttribute 可以验证一个函数(validation function)。

 namespace ModelValidation.Models {
 public class Appointment {
  [Required]
  [StringLength(10, MinimumLength = 3)]
  public string ClientName { get; set; }
  [DataType(DataType.Date)]
  [Remote("ValidateDate", "Home")]
  public DateTime Date { get; set; }
  public bool TermsAccepted { get; set; }
 }
}

要对描述 TextBox 的模型属性应用验证,一个好的做法是使用 TextBoxFor<>()。像那样:

@Html.TextBoxFor((model) => model.ClientName )
于 2013-10-21T08:55:23.697 回答
0

要清除所有文本框,您可以尝试这样的事情

foreach (var item in Page.Controls)
    {
        if (item is TextBox)
        {
            ((TextBox)item).Text = "";
        }
        if (item is DropDownList)
        {
            ((DropDownList)item).SelectedIndex= 0;
        }
        //and the other types
    }

对于验证部分,您必须设置所需的验证字段并将其直接绑定到 .aspx 页面上的字段

<asp:textbox ID="Name" runat="server" TabIndex="1"/>
<asp:RequiredFieldValidator ID="rfvName" ControlToValidate="Name" runat="server" ErrorMessage="Name is required">
<asp:ValidationSummary ID="ValidationSummary1" runat="server" DisplayMode ="BulletList" ShowSummary ="true" HeaderText="Errors:" />

当您尝试保存并且验证器的条件之一返回 false 时,验证摘要将显示写入 errormessage 属性中的所有错误。

于 2013-10-21T08:50:02.707 回答