淺談jQuery中ajaxPrefilter的應(yīng)用
jQuery的定義了一個(gè)ajax過(guò)濾器ajaxPrefilter,通過(guò)該過(guò)濾器可以過(guò)濾通過(guò)jQuery相應(yīng)的ajax函數(shù)發(fā)送的ajax請(qǐng)求。
在項(xiàng)目中,很多地方存在指定開(kāi)始時(shí)間、結(jié)束時(shí)間來(lái)獲取該時(shí)間區(qū)間內(nèi)某些值隨時(shí)間變化的過(guò)程線的需求,我們可以定義一個(gè)通用的ajaxPrefilter來(lái)過(guò)濾所有ajax請(qǐng)求,當(dāng)開(kāi)始時(shí)間超過(guò)結(jié)束時(shí)間的時(shí)候,便將該ajax請(qǐng)求abort。
$.ajaxPrefilter(function (options, originalOptions, jqXHR) { //tm1、tm2表示開(kāi)始時(shí)間、結(jié)束時(shí)間 var requestType, params, startTime, endTime; requestType = (originalOptions.type || "").toUpperCase(); //jsonp的時(shí)候type為undefined if (requestType === "GET") { params = originalOptions.data ? $.param(originalOptions.data) : originalOptions.url; } else if (requestType === "POST") { params = $.param(originalOptions.data); } if (params) { startTime = params.match(/(^tm1|&tm1)=([^&#]*)/i) ? decodeURIComponent(params.match(/(^tm1|&tm1)=([^&#]*)/i)[2].replace(/\+/g, "%20")) : null; endTime = params.match(/(^tm2|&tm2)=([^&#]*)/i) ? decodeURIComponent(params.match(/(^tm2|&tm2)=([^&#]*)/i)[2].replace(/\+/g, "%20")) : null; if (startTime && endTime) { startTime = startTime.replace(/\-/g, "/"); endTime = endTime.replace(/\-/g, "/"); if (new Date(startTime).getTime() > new Date(endTime).getTime()) { jqXHR.abort(); alert("開(kāi)始時(shí)間不能大于結(jié)束時(shí)間"); } } } });
以上這篇淺談jQuery中ajaxPrefilter的應(yīng)用就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
JQuery 1.3.2以上版本中出現(xiàn)pareseerror錯(cuò)誤的解決方法
最近正在做一個(gè)系統(tǒng),測(cè)試組那邊不停的報(bào)告bug:后臺(tái)、前臺(tái)各種列表報(bào)告js彈出窗錯(cuò)誤,內(nèi)容僅僅是一句“pareseerror”!2011-01-01Javascript 鏈?zhǔn)秸{(diào)用實(shí)現(xiàn)代碼(參考jquery)
謂的鏈?zhǔn)秸{(diào)用無(wú)非是一個(gè)語(yǔ)法技巧而已,我就學(xué)Jquery寫了一個(gè)粗淺的庫(kù)。2010-05-05jQuery實(shí)現(xiàn)跟隨鼠標(biāo)運(yùn)動(dòng)圖層效果的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)跟隨鼠標(biāo)運(yùn)動(dòng)圖層效果的方法,可實(shí)現(xiàn)實(shí)時(shí)顯示鼠標(biāo)坐標(biāo)的圖層跟隨鼠標(biāo)運(yùn)動(dòng)的效果,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-02-02來(lái)自國(guó)外的30個(gè)基于jquery的Web下拉菜單
來(lái)自國(guó)外的30個(gè)基于jquery的Web下拉菜單,需要的朋友可以參考學(xué)習(xí)下2012-06-06jquery通過(guò)a標(biāo)簽刪除table中的一行的代碼
刪除table中的一行的方法有很多,在本文為大家介紹下jquery是如何做到的,下面有個(gè)不錯(cuò)的示例,喜歡的朋友可以參考下2013-12-12jQuery解決下拉框select設(shè)寬度時(shí)IE 6/7/8下option超出顯示不全
jQuery解決IE 6/7/8 BUG:下拉框select設(shè)寬度時(shí)option超出顯示不全,經(jīng)過(guò)修改效果還不錯(cuò),遇到類似情況的朋友可以參考下哈2013-05-05jquery之a(chǎn)jaxfileupload異步上傳插件(附工程代碼)
在處理文件上傳時(shí)需要使用到文件的異步上傳,這里使用Jquery Ajax File Uploader這個(gè)組件,服務(wù)器端采用struts2來(lái)處理文件上傳2013-04-04