web-dev-qa-db-ja.com

ASP.NETのボタンの検証をバイパスする方法は?

ユーザーからの入力を受け取るASP.NETフォームがあります。フォームにはSubmitボタンと、テキストフィールドに入力する計算を行うCalcというボタンがあります。私が抱えている問題は、フォーム上に<ASP:REQUIREDFIELDVALIDATOR>バリデーターとCalcボタンが押されると、フォームが検証されます。 Calcボタンが押されたときに必須フィールドを検証したくないので、Submitボタンのみを押してください。これを回避する方法はありますか?

43
Mark Allison

CausesValidationプロパティをfalseに設定します。

80
Brandon
<asp:Button runat="Server" ... CausesValidation="False" />

Button.CausesValidation (正しく覚えている場合)。

20
Brad Christie

CausesValidation="false"ボタン属性として。

いくつかのサンプルコード:

http://weblogs.asp.net/scottgu/archive/2005/08/04/421647.aspx

5
IrishChieftain

ASPXページ:

<asp:Button ID="buttonNew" runat="server" Text="New" CausesValidation="False" />

[〜#〜] or [〜#〜]

CodeBehindページ:(.cs)

buttonNew.CausesValidation = false;

here をチェックして、コントロールのValidatedおよびValidatingイベントの詳細を確認します。

4

Button.causesValidationをfalseに設定します。

このリンク

ただし、ユーザー入力に基づいて何かを計算するだけの場合は、ポストバックすることはまったくありません。 HTMLボタンを使用し、JavaScriptを添付して作業を行うことをお勧めします。そうすれば、この問題は発生しません。

2
MoarCodePlz

ボタンの設計中に、プロパティCausesValidation = "false"を設定して、ボタンクリックイベントでの検証を回避できます。サーバーコントロールを検証し、クリックイベントのみを実行することはできません。

1
Krishnakumar

特定のコントロールで検証を無効にするには

コントロールのCausesValidationプロパティをfalseに設定します。

<asp:Button id="Button3" runat="server"
  Text="Cancel" CausesValidation="False">
</asp:Button>

検証コントロールを無効にするには

Set the validation controls Enabled property to false.

クライアント側の検証を無効にするには

Set the validation controls EnableClientScript property to false.

詳細

0
DJN