0

ユーザーが SQL データベースのテーブルから顧客データを追加、更新、削除、取得できる Web フォームを作成する必要があります。

ユーザーがフィールドの詳細を入力してDBのテーブルを更新できるように、テーブルの各フィールドにテキストボックスが必要です。

私が問題を抱えているのは、すべてのテキストボックスとメッセージラベルをクリアするための明確な方法を作成する必要があるフォームの背後にあるコードです。また、テキストボックスごとに検証要件を設定する必要があります。しかし、これを適切に行う方法がわかりません。

テキストボックスは次のとおりです。

CustID、Firstname、Surname、Gender、Age、Address1、Address2、City、Phone、Mobile、Email、Confirm Email。

私の主な質問は、テキストボックスを検証するにはどうすればよいですか? 例えば; お客様 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 に答える
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:" />

保存しようとして、バリデーターの条件の 1 つが false を返すと、検証の概要に errormessage 属性に書き込まれたすべてのエラーが表示されます。

于 2013-10-21T08:50:02.707 に答える
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;
            }
        }

検証の目的で、Asp.net について読むことを強くお勧めします。ここvalidationから学習できる優れたチュートリアルを次に示します。

于 2013-10-21T08:57:36.740 に答える
0

これは、ASP/MVC の例です。ASP のテクノロジを指定するのを忘れたためです。フォームまたは MVC ?!? これは mvc に適用され、他の属性は私の前のユーザーによって既に定義されています。

RemoteAttribute は関数 (検証関数) を検証できることに注意してください。

 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 に答える