-2

jQueryで検証されたフォームの上部に2つのボタンがあります。1つは変更を保存し(フォームの送信ボタン)、もう1つはTermsOfServiceダイアログを表示し、同意すると他のコードを実行します。

<button class="btn" value="Save Changes" 
        name="submit" type="submit" id="entryFormSave">Save changes</button>


<button class="btn" 
        data-toggle="modal" 
        href="#modal-TOS" 
        data-backdrop="true" 
        data-keyboard="true" 
        id="entryFormSubmit">Submit for review</button>

最初の/送信ボタンはフォームを検証します-2番目のボタンもフォームを検証し、検証に合格すると、TOSモーダルを表示します。

どんな助けでも大歓迎です。

更新:私はいくつかのことを試しましたが、どれもうまくいきませんでした。data-toggle = "modal"を追加すると、検証をトリガーするボタンが無効になることに注意しました。最新の反復は次のとおりです。 $('#entryFormSubmit').click(function(){ validate(); });

フォームに配置したボタンはすべて、フォームを検証します。ただし、data-toggle = "modal"プロパティを追加すると、検証が無効になり、次に何をすべきかを理解するのに十分なJSMavenではありません。

4

2 に答える 2

0

クリック時に.valid()を呼び出します:

  $(function(){
     $('#entryFormSubmit').on('click', function(){
         if($('#formid').valid()){
            //do whatever... call like calling $('formid').submit();
         }
      }
  });
于 2012-06-22T19:29:16.717 に答える
0

@frictionlesspauley-小さなスニペットでもありがとう。最終的にJqueryValidateページに戻り、falseが返された場合は、モーダルの表示を中断しました。これは、望ましいことです。

これが私が使用したものです:

$("#entryFormSubmit").click(function() {
    var ValidStatus = $("#entryForm").valid();

    if (ValidStatus == false) {
        return false;
    }
});
于 2012-06-23T20:35:40.900 に答える