20

ちょっとした文脈:

jQuery Validation プラグインを使用してサインアップ フォームを検証しています。ユーザー名がシステムで使用可能かどうかを確認するために ajax 呼び出しを実装したいと考えています。この ajax 呼び出しは、userName の値が で設定されたルールに従って有効な値である場合にのみ行いたいと考えています。$(form).validate();

私は次のようなものが欲しい:

$("#userName").keyup(function () {
    if ($("#userName").isValid()) {
        //make ajax called
    }
});

ドキュメントを検索しましたが、問題の解決策を特定できませんでした。

4

4 に答える 4

43
$("#userName").keyup(function () {
    if ($("#userName").valid() == true ) {
        //make ajax called
    }
});

http://docs.jquery.com/Plugins/Validation/valid

注:リンクをクリックしていない方へ。$("#myform").validate();最初に電話する必要があります。

于 2011-04-25T13:50:45.070 に答える
8

Validator.element()

説明: 単一の要素を検証し、有効な場合は true を返し、そうでない場合は false を返します。

http://jqueryvalidation.org/Validator.element

于 2015-10-28T10:33:09.030 に答える
0

こんにちは、私は排他的な解決策を見つけました。47k の他の人と同じ問題を抱えており、他の jquery プラグインやライブラリを使用せずに解決策を発見しました: -まず、入力を変数に登録する必要があります。つまり、有効な場合、登録された変数を入力に割り当てて、次の変更のために休ませます。

        ivar=$('input[name="y-i-name"]')[0];
        $('input[name="y-i-name"]').on('change',function(){
             if($('input[name="y-i-name"]')[0].checkValidity()){


                     // your custom code here!



                     $('input[name="y-i-name"]')[0]=ivar; // & now we rest the input for next change validation
             }
        });
于 2019-10-01T16:32:36.633 に答える