1
              data-val="true"
              data-val-length="请填写期望小区,6-20字"
              data-val-length-min="6"
              data-val-length-max="20"

私の入力には data-val-required がありません。空白にするか、6 ~ 20 文字を入力する必要があることを願っています。クロムはこのようにします。しかし、IE では、少なくとも 6 文字を入力する必要があり、空白にすることはできません。

これに遭遇した人、そして私にいくつかのヒントを教えてください。Chromeは正しいことをしていると思います。

おそらくIEの問題ではなく、jquery.validate.unobtrusiveバグだと思います。それは...ですか?

4

1 に答える 1

0

このようなカスタム検証メソッドを追加する必要があります。minlength属性とmaxlength属性を使用する必要がなくなりました

    $.validator.addMethod("blankOrSixToTwenty", function(value, element) {
        return blankOr6_20(value);
    }, "Please leave blank or enter 6-20 Characters");


    function blankOr6_20(str,limit){
        limit = (typeof limit=='undefined')? '20' : limit;
        if(str.length == 0 || ( str.length > 5 && str.length < 21 )
            return true;
        else
            return false;
    }

    validator = $("#proposal_form").validate({//enter your form id inplace of "proposal_form"
        rules: {
            proposal_url: {//"proposal_url" is the id of the input field you need to validate
                blankOrSixToTwenty: true
            }
        }

    });
于 2012-10-12T09:32:51.610 に答える