0

一部のページには、テキストボックスとテキストボックスの内容をチェックするカスタムバリデーターを含むユーザーコントロールを含むリピーターがあります。バリデーターのロジックは、可能であればそのままにしておく必要があります。

コントロールはレンダリングされますが、デフォルトでは表示されません。ユーザーはチェックボックスをオンにする (jQuery スクリプトを起動する) ことでそれらを表示できるため、「追加済み」としてマークされます。これで、ユーザーが保存ボタンをクリックすると、表示されているコントロールのバリデータのみが起動します。現時点では、すべてのバリデーターが起動しますが、これは望ましくありません。

更新
コードビハインドのバリデーターをデフォルトで無効にしました

controlValidator.Enabled = false;

jQueryスクリプトでそれらを有効にしようとしました。ただし、これは効果がありません。

$val = $(this).find(".controlCell").find(".controlValidator");
$val.removeAttr('disabled');

バリデーターは、(ID ではなく) css クラスで見つけることができます。

4

2 に答える 2

0

追加したコントロールにValidationGroup属性を追加できます。これで、検証する asp.net コントロールを制御できます。

于 2012-05-23T12:57:53.473 に答える
0

私の知る限り、以下のようにコントロールを非表示にするとともに、コントロールを無効にすることができます。

$("#<%ControlID.ClientID%>").attr("disabled", "disabled");

お役に立てれば!!

于 2012-05-23T12:58:39.713 に答える