1

同じフォームの他の入力値に依存する検証を行いたいです。

$( "#step1" ).validate({
  rules: {
    weight: {
        required: true,
        max: $('#maxweight'),
        min: 1
    },
...

jqueryvalidation.orgのすべてのドキュメントを読んでいましたが、フォームから他の値を使用して他の#idの最大値を検証することについて何も見つかりません。

よろしくお願いします。

- - 編集 - -

JS Fiddle、重みが maxweight に依存することを検証したいと思います。後で、if 関数で検証したいと思います。

if(maxweight == 10) {
    max: 10
}
else if(maxweight == 20) {
    max: 20
}

- - 解決 - -

助けてくれてありがとう:)私はこのようにしました:JS Fiddle

4

2 に答える 2

2

例を次に示します。

$(".selector").validate({
  rules: {
    email: {
      depends: function(element) {
        // Do what you want to test
        return $("#contactform_email:checked");
      }
    }
  }
});

あなたが望むもののために、ここにあなたの問題を説明するリンクがありますjQuery validation - 実行時に最大値を変更する

そして、ここに解決策があります: http://jsfiddle.net/rUyAx/2/

$(document).ready(function() {
$("#step1").validate({
    rules: {
        weight: {
            required: true,
            //max: $("#maxweight").val(),
            min: 1
        }
    }
});

$("#submit").click(function(){
   $('#weight').rules("remove", "max");
   $('#weight').rules("add", {
     max: $('#maxweight').val()
   });
   $("#step1").submit();
});

});

(送信ボタンにIDを追加しました。)

于 2013-10-19T21:58:24.400 に答える
2

これを試して。これにより、最大体重に基づいて体重が検証されます。

$("#step1").validate({
        rules: {
            weight: {
                required: true,
                min: 1,
                depends:function(element){
                    return  $(element).val() < $("#maxweight").val();
                }            
            }
        }
    });
于 2013-10-20T11:55:57.827 に答える