【问题标题】:Jquery Validate Error on IE8-10IE8-10 上的 Jquery 验证错误
【发布时间】:2013-11-21 13:57:01
【问题描述】:

我的电子商务中有一个带有 jquery validate 的结帐页面,在 firefox/chrome 中它可以正常工作,但在 Internet Explorer 8 到 10 中,我收到以下错误:

“对象不支持此属性或方法 jquery validate”

我尝试过旧/新版本的 validate 和 jquery,jquery 1.10、2.0,在 2.0 中它确实适用于 IE9 和 10,但我们需要对 IE8 的支持,而 jquery 2.0x 不再支持。是的,我正确地实例化了 validate.js 但根本不起作用!

当我刷新页面时它在本地工作,但是当我导航到我收到错误的链接时,这完全是疯了!

这是我的代码:

<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery-1.7.1.min.js"></script>
<script src="https://www.moip.com.br/transparente/MoipWidget-v2.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery-ui-1.10.3.custom.min.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.bgiframe-2.1.2.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.placeholder.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.swfobject.1-1-1.min.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.jqzoom-core.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.meio.mask.min.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.validate.1.8.1.min.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.validate.additional-methods.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jcarousellite_1.0.1.min.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.cycle.all.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.easing.1.3.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.lazyload.min.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.popupWindow.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/jquery/jquery.colorbox.min.js"></script>
<script src="http://192.168.0.24/client/public/template/site/default/javascript/tools/tools.js"></script>

<script>
$(window).load(function(){
    $('#identificacao').validate({ // I receive the error in this line
        rules: {
            email:"required",
            senha:"required"
        },
        messages: {
            email:"Por favor, entre com seu e-mail.",
            senha:"Insira sua senha."
        }
    });

这是我最后一次尝试,我尝试了 1.7 版和 validate 1.8(在另一个电子商务中工作),并且已经尝试了两者的最后一个版本,仍然得到错误,我不知道会发生什么,任何人都有同样的错误?

我正在使用这个验证插件: http://jqueryvalidation.org/

【问题讨论】:

  • 您能提供您正在使用的验证插件的网址吗?那里有很多 jQuery Validate 插件。

标签: javascript jquery internet-explorer internet-explorer-8 jquery-validate


【解决方案1】:

引用 OP:

object doesn't support this property or method jquery validate

“当我刷新页面时它在本地工作,但是当我导航到我收到错误的链接时,这完全是疯了!”

是的,这太疯狂了……它是 Internet Explorer,它不能可靠地与 $(window).load() 一起工作。您对刷新页面的描述是这个常见问题的症状。

见:http://api.jquery.com/load-event/

  • 它不能始终如一地工作,也不能可靠地跨浏览器
  • 如果图像 src 设置为与以前相同的 src,它不会在 WebKit 中正确触发
  • 它没有正确地冒泡 DOM 树
  • 可以停止为已经存在于浏览器缓存中的图像触发

试试这个吧……

$(document).ready(function() {  // fires on DOM ready event

    $('#identificacao').validate({ 
        // your rules, options, etc.
    });

});

jQuery DOM ready event handler


如果您出于其他原因仍需要 $(window).load() 事件,则将其放置在 DOM 就绪处理程序中是完全可以接受的。

$(document).ready(function() { // <- fires when DOM is ready 

    $(window).load(function() { // <- supposed to fire when all assets have loaded
        ....
    });

});

【讨论】:

  • 太棒了,我解决了从另一个正在运行的项目中复制文件的问题,但我从没想过这个准备/加载事件会给我带来这么多问题,而另一个项目是 document.ready 而不是 window .load,所以这可能是解决我的问题的原因,我有一天会再次测试!非常感谢您的信息!
  • @RafaelMoni,不客气。你一定是 jQuery 的新手。在几乎所有情况下,您的 jQuery 代码都包含在 DOM Ready 处理程序中。
猜你喜欢
  • 1970-01-01
  • 2013-10-03
  • 1970-01-01
  • 2012-10-26
  • 1970-01-01
  • 2016-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多