1.12版jquery.validate IE8 兼容解决方案

搜索 formnovalidate

然后改成这种,也就是if中间注释

                    // allow suppressing validation by adding the html5 formnovalidate attribute to the submit button
                    if ($(event.target).attr("formnovalidate") !== undefined) {
                        //validator.cancelSubmit = true;
                    }

 搜索elements 大概500行左右

  elements: function () {
                var validator = this,
                    rulesCache = {};

                // select all valid inputs inside the form (no submit or reset buttons)
                return $(this.currentForm)
                .find("input, select, textarea")
                .not(":submit, :reset, :image,:button, [disabled]")
                .not(this.settings.ignore)
                .filter(function () {
                    if (!this.name && validator.settings.debug && window.console) {
                        console.error("%o has no name assigned", this);
                    }

                    // select only the first element for each name, and only those with rules specified
                    if (this.name in rulesCache || !validator.objectLength($(this).rules())) {
                        return false;
                    }

                    rulesCache[this.name] = true;
                    return true;
                });
            },

 改成这种,然后 运行 会JS报错,然后调试 会提示 原生的js getattribute不存在啥的, 把那里用 替换成

$element.attr

 这样就行了

这是 IE8 兼容的应急方案

顺便说一句 我用的jquery 1.11.0 min

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。