1

ボタン (タイプは送信ではありません) と、以下のようなボタンに関連付けられたイベントがあるとします。

$("#idProceedBtn").on("click", function (e) {.....}

検証に合格した後にのみ、イベントでアクションを実行する必要があります。以下のステートメントのelse条件でこれを達成できます

if($("input,select,textarea").not("[type=submit]").jqBootstrapValidation("hasErrors")){.....}else{.....}

これを行うことは機能していますが、タイプ送信のボタンがクリックされたときに何が起こるかのように、検証に失敗したフィールドとその理由を強調表示していません。

4

2 に答える 2

1

jqBootstrapValidation.js の「hasErrors」メソッドを変更して解決策を見つけました - 「submit.validation」にトリガーを追加しました。

hasErrors: function() {

    var errorMessages = [];

    this.each(function (i, el) {
      errorMessages = errorMessages.concat(
        $(el).triggerHandler("getValidators.validation") ? $(el).triggerHandler("validation.validation", {submitting: true}) : []
      );
      $(el).trigger("submit.validation");
    });

    return (errorMessages.length > 0);
},

現在、期待どおりにフォームのエラーが強調表示されています。

于 2013-07-06T10:48:12.243 に答える
-1
onload
$("input,select,textarea").not("[type=submit").trigger("focus");
于 2016-09-09T00:25:23.217 に答える