0

複数ページのフィールドを含む ASP.NET フォーム ウィザードを作成しました。これらのフィールドには、必須のものとオプションのものがあります。デフォルトでは、ウィザードはすべてのフィールドを必須にするようです。それらをオプションに変更するにはどうすればよいですか? フォーム ウィザード

required=falsein で目的の効果が得られると<input runat="server" ID="txtDriverLicenseNumber" type="text" required="false" size="24"></input>思いましたが、何もしないようです。

さらに、現在のページのフィールドに入力していない場合でも、フォームで「前へ」をクリックできるようにしたいと考えています。

いくつかの支援をいただければ幸いです。

4

2 に答える 2

1
  1. フィールドのHTML5 属性requiredinput、クライアント側 (ブラウザー) で検証されます。すべてのブラウザが対応しているわけではありません。必須にしたくない場合は、属性を含めないでください (省略してください、言わないrequired="false"でください) 。

    この入力は必須です:

    <input required name=... /> 
    

    この入力は必須ではありません:

    <input name=... /> 
    
  2. HTML サーバー コントロールまたは ASP.Net コントロールでこの属性を使用して、それをサポートしているブラウザーにクライアント側の検証を追加できます。

    HTML サーバー コントロールで使用します。

    <input id="input1" name="input1" type="text" required runat="server" />
    

    ASP.net コントロールで使用:

    <asp:TextBox runat="server" ID="tbox1" required />
    

    これは、Firefox (v12) がrequired属性の検証をレンダリングする方法です (スクリーンショットは Chrome ですか?):

    必須入力属性の firefox レンダリング

  3. ASP.Net Validation Controls を使用して、サーバー上の HTML サーバーと ASP.net コントロールの両方を検証できます (サーバー側の検証とも呼ばれます)。これは、入力を適切に検証するために行う必要があります。

    サーバー側の検証は、ブラウザーが HTML5属性をサポートしているかどうかに関係なく機能しrequiredます。

    ASP.Net HTML サーバー コントロールのサーバー側の検証 (必須):

    <input id="input1" name="input1" type="text" required runat="server" />
    
    <asp:RequiredFieldValidator ID="rf1" runat="server" 
    Text="input required" ControlToValidate="input1" ForeColor="Red" />
    

    ASP.Net コントロールのサーバー側の検証 (必須):

    <asp:TextBox runat="server" ID="tbox1" required />
    
    <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
    Text="textbox required" ControlToValidate="tbox1" ForeColor="Red" />
    
  4. 検証により、ASP.Net ウィザードの進行状況が制御されます。「次のステップ」に進む (および戻る) には、必須フィールド (のみ) を入力する必要があります。それがどのように機能するかです。

    すべてのフィールドを誤って必須にしたため、問題が発生していると思います(属性required="false"省略するのではなく 設定し、 Chromeを使用しているため、検証します)。

ひ...

于 2012-06-04T03:20:17.150 に答える
0

HTML 入力タグ属性が必要です。これは ASP.NET サーバー コントロール プロパティではありません。必須属性が存在する場合、フィールドはその値に関係なく必須です。Required プロパティは HTML 5 でのみサポートされていることに注意してください。

http://www.w3schools.com/html5/att_input_required.asp

ASP.NET ウィザード コントロールはフィールドを必須にしません。ASP.NET は検証コントロールを使用しており、それを使用することをお勧めします。バリデータでは、ASP.NET サーバー コントロール (TextBox、CheckBox など) を使用する必要があります。こちらを参照してください。

http://msdn.microsoft.com/en-us/library/debza5t0.aspx

ASP.NET バリデーターを使用する場合、CausesValidation ボタン プロパティを false に設定するだけで、そのボタンは検証をトリガーしません。

于 2012-06-03T20:03:17.737 に答える