欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談jQuery中ajaxPrefilter的應(yīng)用

 更新時間:2016年08月01日 10:09:51   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談jQuery中ajaxPrefilter的應(yīng)用。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

jQuery的定義了一個ajax過濾器ajaxPrefilter,通過該過濾器可以過濾通過jQuery相應(yīng)的ajax函數(shù)發(fā)送的ajax請求。

在項目中,很多地方存在指定開始時間、結(jié)束時間來獲取該時間區(qū)間內(nèi)某些值隨時間變化的過程線的需求,我們可以定義一個通用的ajaxPrefilter來過濾所有ajax請求,當(dāng)開始時間超過結(jié)束時間的時候,便將該ajax請求abort。

$.ajaxPrefilter(function (options, originalOptions, jqXHR) { //tm1、tm2表示開始時間、結(jié)束時間
  var requestType, params, startTime, endTime;
  requestType = (originalOptions.type || "").toUpperCase(); //jsonp的時候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("開始時間不能大于結(jié)束時間");
      }
    }
  }
});

以上這篇淺談jQuery中ajaxPrefilter的應(yīng)用就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論