2011-06-25 11 views
1

TextBoxに割り当てられた標準ASP.NET(Webフォーム、非MVC)カスタムバリデータがあります。私はTextBoxイベントOnBlur(またはOnChange)が、顧客コントロールで指定されたクライアント側の検証関数をトリガーするようにします。 Way 1.1 in .Net 1.1 "ValidatorHookupControl"と呼んでこれを "OnLoad"にすることはできましたが、それはインフラストラクチャの一部ではなくなっています。カスタムバリデータークライアント関数の実行方法OnBlurまたはOnChange

私はその何かをはっきりと推測していますが、これまでのところ私は逃げ出してしまいました。

注: "onBlur"検証エラーが、送信時に発生する他の検証ツールと同じ場所/フォーマット(別名検証サマリー)で報告されるように、.Net検証構造内にとどまりたいです。

答えて

0

カスタムバリデータは不要です(CustomValidator.ClientValidationFunction)。

ASP.NET検証インフラストラクチャを使用する場合は、BaseValidatorを継承し、JavaScriptを使用して登録します(jQueryを使用することをお勧めします)。そして、検証を実行します。


それとも、CustomValidator.ClientValidationFunctionを使用することができます。 CustomValidatorから継承し、必要なコントロールのイベントをターゲットとする(おそらく)Control.PreInit()サブスクライブバリデータの関数を呼び出し、呼び出す関数を待機します。

+1

私はカスタムコントロールを作成する理由はわかりませんが、私が(MyControlと言っている)と仮定すると、ターゲットコントロールのクライアントサイドイベントをMyControlのクライアントサイド検証funtiohnにどのように配線しますか? – Serexx

+0

ああ、私は...シンプル - 'ValidatorOnHookup'は自動的に実行されるので、もはや必要ありません。 私はClientValidationFunctionが起動していないので、私はそれを認識しませんでした。 ** **は、CustomValidatorタグにVisible = "false"属性が含まれているために**表示されます。 削除されるとすぐに、クライアント機能が実行されました。 問題が解決しました。 – Serexx

関連する問題