十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
环境:
成都创新互联公司是一家集网站建设,莱山企业网站建设,莱山品牌网站建设,网站定制,莱山网站建设报价,网络营销,网络优化,莱山网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
jquery 1.7.2
jquery.validate.1.12.0
IE7
今天用validate.js, 在IE7上一直报错, 网上查了下资料,原因基本都是一下2个:
1. 自己的代码中有多余的逗号
2. 在源码中29~30行(我下载的文件里)
// Add novalidate tag if HTML5.
this.attr( "novalidate", "novalidate" )
修改为:
// Add novalidate tag if HTML5.
if (typeof(Worker) !== "undefined") {this.attr("novalidate", "novalidate")}
都不符合我的情况...在IE11调试了一下, 发现是
627行:customDataMessage: function( element, method ) {...}
933行: dataRules: function( element ) {...}
中存在method[ 0 ] 这种写法, 而method是个String, IE7中没有这种写法, 其他浏览器(chrome, FireFox, IE8+)则可以.
将method[ 0 ] 修改为: method.charAt(0) 或者 method.slice(0,1) 都可以解决该问题.