1

jQuery Unobtrusive validate と MVC4 を使用しています。フォームには、クライアント側でフォームをリセットするために使用したいキャンセル アンカーがあります。

onFocusOut 検証を使用しています。

無効なフィールドにフォーカスが置かれているときにキャンセル リンクを押すと、入力フィールドのフォーカスを失うアクションによって検証が開始されます。

送信ボタンの場合はキャンセル クラスを使用できますが、それでは送信時間の検証が起動しないだけです。onFocusOut 検証は引き続き実行されます。

キャンセル リンクで onMouseDown をトラップし、DoNotValidate フラグを設定してから、そのフラグをオフにするという解決策があります。それは機能しますが、クラッジのように見えます。

onFocusOut を使用しているからでしょうか。OnFocusOut を使用する場合、他の人はキャンセルをどのように処理しますか?

4

1 に答える 1

1

onblurイベントで実行される検証を無効にする以外に、これに対する明確な解決策がないことを残念に思います。onsubmitこれを無効にして、イベントに対してのみクライアント側の検証を実行できます。それ以外の場合は、発見した回避策が実行可能と思われます。

于 2013-01-18T16:26:26.947 に答える