麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 編程 > JavaScript > 正文

jquery validate在ie8下的bug解決方法

2019-11-20 21:42:50
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
項(xiàng)目用到了jquery的表單校驗(yàn)插件validate,之前一直都只是做很簡(jiǎn)單的校驗(yàn),沒(méi)有做過(guò)稍微復(fù)雜的應(yīng)用,近期項(xiàng)目對(duì)應(yīng)用的要求提高了,一個(gè)頁(yè)面中有兩個(gè)提交按鈕,然后表單校驗(yàn)是綁定在按鈕的點(diǎn)擊事件上的,如下。
 
然后很自然的就用到了插件的valid()函數(shù):
 
這個(gè)確實(shí)能達(dá)到相要的效果,但是在ie8下竟然有問(wèn)題,valid()方法始終返回false,而且所有的字段都會(huì)被當(dāng)成必填字段校驗(yàn),糾結(jié)了好久,因?yàn)閖query的插件代碼都很復(fù)雜,所以剛開(kāi)始看特別費(fèi)勁,后來(lái)一步一步排查,找到問(wèn)題了,問(wèn)題出在attributeRules()函數(shù)上:
 
這個(gè)函數(shù)的作用是:當(dāng)你把校驗(yàn)規(guī)則寫在頁(yè)面上而不是腳本里面時(shí),同樣可以應(yīng)用校驗(yàn)框架。技術(shù)上是很合理的,對(duì)required的處理也是合理的,但是對(duì)于ie8來(lái)說(shuō),就有點(diǎn)問(wèn)題了。ie8會(huì)執(zhí)行以下分支:
 
所以,所有的字段都會(huì)被當(dāng)成必填字段校驗(yàn)了。經(jīng)過(guò)測(cè)試,最后又兩種方法可以解決:

第一種是在rules()方法里面找到下面這段代碼,注釋掉對(duì)attributeRules()的調(diào)用,之所以可以這樣做,是因?yàn)橐话愫苌贂?huì)把校驗(yàn)寫到頁(yè)面中去,當(dāng)然這個(gè)肯定不是最佳解決方案,那就看看第二種。
 
第二種解決方法需要做兩件事情:首先,需要對(duì)attributeRules()方法做一些修改,把getAttribute()方法換成attr()方法。注意getAttribute()是js方法,而attr()是jquery方法,它們的使用對(duì)象是不一樣的,其實(shí)這樣改完后,ie8下面的bug已經(jīng)解決了,但是ie7下又出現(xiàn)了這種問(wèn)題,所以你要用最新的jquery,我測(cè)試的時(shí)候用的是jquery1.10.2版本。
 
哦,對(duì)了,最后不要忘記阻止表單的默認(rèn)事件。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产成年人视频 | 91精选视频在线观看 | 久久久久.com| 黄色片一区二区 | 全视频tv | 久久国产精品久久久久 | 羞羞视频免费网站 | hdbbwsexvideo| 九九热在线视频观看这里只有精品 | 国产成人免费精品 | 99视频有精品 | 亚洲免费视频大全 | 黄色片小说 | 激情av在线 | 中文字幕亚洲视频 | 看国产一级毛片 | 性aaa| 欧美精品免费一区二区三区 | 国产成人免费高清激情视频 | 在线天堂中文字幕 | 99精品热视频 | 国产pron| www.国产免费 | 怦然心动50免费完整版 | 黄色一级毛片免费看 | 欧美日韩亚洲成人 | 九九热这里只有精品8 | 小视频免费在线观看 | www.成人精品 | 新久久久久久 | 色婷婷久久一区二区 | 精品偷拍久久 | 91精品国产乱码久久桃 | 日本在线播放一区 | 黄色片网站在线免费观看 | 国产一区二区在线免费播放 | 黄色片快播 | 欧美毛片| 7777奇米成人四色影视 | 亚洲一区二区网址 | 91精彩视频 |