質問

Web ページの日付/時刻フィールドを検証する必要がありますが、ページをリロードせずに検証したいので、ユーザーに「即時」フィードバックを提供したいと考えています。

最良/最も簡単な解決策は何ですか。ところで:最も簡単なスコアは総ポイントの 65%

編集:最高のポイントが総ポイントの 65% だったらどうなるでしょうか?

役に立ちましたか?

解決 10

ASP.NET AJAX Control Toolkit が提供する、優れた機能を備えた MaskedEdit コントロールと MaskedEditValidator コントロールに関する素晴らしいビデオがあるようです。初心者にとっては簡単ではありませんが、非常に優れた即時のフィードバックが得られます。

全ての回答をありがとうございました!

アスプネット

残念ながらこの回答は受け入れられません.

他のヒント

JavaScript を使用したい場合は、日付検証関数が組み込まれています。ただし、JavaScript のルートを選択したくない場合は、UI をドロップダウン コントロールに変更して、ユーザーが無効なデータを入力できないようにすることもできます。2 月 30 日に誰も送信していないことを確認するために、サーバー側をチェックする必要があります。

これをチェックしてください JavaScriptの日付検証 関数。

JavaScript、正規表現、テキスト入力の「onblur」イベントを使用します。

@デビッドH.オースト

onblur を検証に使用することには問題があります。フォームを送信するのにマウスではなく Enter キーを使用する人がいるからです。onblur とフォームの onsubmit イベントを組み合わせて使用​​すると、より良い解決策になる可能性があります。私がフォームの JS 検証をもっと行っていた頃は、keyup イベントに対して実行していました。これにより、ユーザーは自分の入力が正しいかどうかについて即座にフィードバックを受けることができました。ユーザーがフィールドを離れるまで「間違っている」メッセージを受け取らないように、チェックを入れることもできます (私もそうしました)。まだ)。

上記のように、日付にはドロップダウンを使用することをお勧めします。そうしない理由は本当に思いつきません。ユーザーに事前定義されたデータから選択してもらいたいのであって、予期できないユニークなものを提供してほしくないのです。

JavaScript を少し使うと 2 月 30 日を避けることができます (日付フィールドに月に基づいて動的に値が入力されるようにします)。

@ブライアン・ウォーショー
キーボードを介して移動するユーザー (ええと、私) を忘れないという点については、非常に良い指摘です。

注目していただきありがとうございます。

送信時に入力フィールドの内容を読み取り、それを検証する単純な JavaScript メソッド。有効でない場合は、フォームがサーバーに送信されないように false を返します。

... onSubmit="return validateForm();" ...

JavaScript の検証をバイパスするのは簡単なので、サーバー側でも検証してください。

ASP.NET を使用している場合は、テキスト ボックスをポイントできる検証コントロールがあり、これを使用して適切な日付/時刻形式を検証できます。

エーテル内で利用できる日付ウィジェットがいくつかあります。そうすれば、有効な入力のみを許可できます。

私はこの小さな js コードをいくつかのプロジェクトで使用しました。他のいくつかのプロジェクトと同様に、日付を迅速かつ簡単に実行できます。

リンク

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top