問題タブ [validationattribute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
456 参照

asp.net-mvc-3 - mvc3 控えめな検証 - ValidationType 値を持つ新しい ModelClientValidationRule を返す

クライアント側で機能するために必要なクライアント検証ルールを含む MinValue 属性を作成する方法を考え出そうとしています - これは私が作成した他の属性に基づいていますが、_minValue をGetClientValidationRules メソッド:

もちろん、上記のコードに似たものを使用してそれを行う方法がまったくない場合を除き、Int32.MaxValue 範囲ルールのハックも探していません。

0 投票する
2 に答える
5220 参照

asp.net-mvc-3 - データ注釈、目立たない検証。最小年齢、最大年齢

達成したいこと:

  1. 最小年齢チェックの失敗と最大年齢チェックの失敗に対して個別の検証メッセージを表示するには
  2. 最小年齢と最大年齢を整数として 1 つの領域に格納します。js/validator ではありません... モデルのみです。構成ファイルを確認するように変更したいと考えています。
  3. 検証がjquery控えめでサーバー側で機能し、モデルに対して1か所にあること(およびいくつかのjqueryを明らかにすること)
  4. データ注釈を使用して有効にする
  5. ユーザーの年齢をintとして入力するのではなく、DOBを日時としてチェックしたかったのです。もしそうなら、[Min] 表記と [Max] 表記を年齢に使用できたはずです。それは十分ではありませんでした。
  6. 範囲表記を使用しなかったのはなぜですか。最小の失敗と最大の失敗ごとに異なる検証メッセージを発行したかったのです。私はこれを調べましたが、見ませんでした。また、範囲を日時とその静的または何かとして渡す必要があるため、たとえば DateTime.Now.AddYears(-90) を実行できませんでした。

私の問題

  1. 私は MVC、JQuery 検証、および MVC アーキテクチャ全体の初心者です。
  2. 私が思いついたものは機能します。ただ、コードの繰り返しが多いのでDRYに準拠したいと思います。
  3. 私の最初のハックは、チェックしている値を検証メッセージに渡すことでした。私はこれを回避しました...

    [MaximumAgeCheck(90,"適用するには最大 {0} 歳である必要があります")]

および検証属性内

たとえば、次のように使用しました..

これが正しい方法ではないことはわかっていますが、これを行う最善の方法は何でしょうか?

セカンドハック!

jQuery.validator.addMethod... メソッドでアクセスできるようにする 2 つの検証パラメーターを渡しています。

次のようにしてこれらのパラメーターにアクセスしようとしました... params. [thevalueiadded]、params [0] ...など、paramsをconsole.logにログアウトしましたが、すべてのパラメーターが表示されることはなく、最初の値のみが表示されました文字列として!

私の回避策は、javascript 変数を一番上に保存し、adapters.add からロードすることでした。

私はおそらくほとんど意味をなさないので、これが機能するコードです...注意してください、それは面倒です!

モデルのプロパティとデータの注釈

最小年齢チェックと最大年齢チェック

検証属性

Jクエリ

これが理にかなっていることを願っています。私はそれを読み直しましたが、かなり文字化けしています...だから、どんなコメントにも喜んで答えます。

0 投票する
1 に答える
9887 参照

c# - Custom ValidationAttribute doesn't work

I tried to create a custom ValidationAttribute:

Then I created (in another class) -

on the view (I use MVC) I wrote:

The validation for "range" works great, but not for the custom one!

What can be the problem?

0 投票する
2 に答える
1608 参照

c# - 動的な値を受け入れるカスタムの日付範囲バリデーターを作成する

既存の .Net 範囲属性バリデータは、静的な文字列値のみを受け入れます。動的な値を受け入れるバリデーターを作成したいと思います。たとえば、年齢範囲を 16 歳から 200 歳にしたいと考えています。最小誕生日を 1996 年と入力すると、1 年後の今日、最小年齢は 17 歳になり、年々上昇し続けます。これは可能ですか、ビューモデルで手動で検証する必要がありますか? 編集:ここでは asp を使用していません。これはデスクトップ アプリケーションです。

0 投票する
1 に答える
2157 参照

asp.net-mvc - 条件による ASP.NET MVC 3 のプロパティの検証の変更

これは私のモデルです:

したがって、より具体的に言いたい場合はRegularExpression、変更による検証を変更すると思います。PhoneType

ユーザーが検証から選択CellPhoneした場合DropDownList

Phone検証を選択した場合

あなたの提案は何ですか?

0 投票する
0 に答える
732 参照

c# - 属性検証 ( ValidationAttribute ) の使用を 1 つのプロパティ タイプのみに制限する

問題は次のとおりです: 検証属性を 1 つのタイプのみに使用するように制限するにはどうすればよいですか?たとえば、DateTime のみです。

現在、私はこの制御方法「IsValid」を行っています:

コンストラクターでこれが欲しいのですが、それが適用される属性のタイプ、または次のような属性を検出する方法がわかりません。

唯一の属性プロパティの使用を制限します。

ありがとうございました。

0 投票する
1 に答える
326 参照

asp.net-mvc-3 - 条件付き ValidationAttribute エラー メッセージを作成するにはどうすればよいですか?

私の ASP.NET MVC3 プロジェクトには、満たす必要がある 2 つの条件を持つカスタム ValidationAttribute があります。うまく機能しますが、カスタマイズされたエラーメッセージを返すことで、どの検証ルールが破られたかをユーザーに知らせたいと思います。

私が使用している方法(基本クラスからエラーメッセージを継承する)では、_defaultError定数の値を初期化した後に変更できないことがわかっているので....

満たさなかった条件に応じて異なるエラー メッセージを返すにはどうすればよいですか?

ここに私の ValidationAttribute コードがあります:

0 投票する
4 に答える
33351 参照

c# - DataAnnotations "NotRequire" 属性

私は複雑なモデルを持っています。

いくつかのプロパティを持つ myUserViewModelがあり、そのうちの 2 つはHomePhoneandWorkPhoneです。タイプの両方PhoneViewModelPhoneViewModel私は、CountryCodeおよびAreaCodeすべてNumberの文字列を持っています。CountryCodeオプションでAreaCodeありながら必須にしたいNumber

これはうまくいきます。私の問題は、UserViewModel WorkPhoneが必須であり、HomePhoneそうでないことです。

プロパティに属性を設定してRequire属性を無効にできる方法はありますか?PhoneViewModelHomeWork

私はこれを試しました:

ただし、それはクラスとメソッドのみです。

コード:

0 投票する
2 に答える
1520 参照

c# - RegularExpression属性を使用したAsp.NetMVC3.0モデルのローカリゼーション

カスタムDataAnnotationsModelMetadataProviderクラスにカスタムエラーメッセージローカリゼーションロジックを記述しました。組み込みのStringLengthAttributeまたはRequiredAttribute検証エラーメッセージで問題なく機能します。しかし、カスタム派生のRegularExpressionAttributeクラスで問題が発生しています。私が使用しているロジックは次のようなものです: