• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    防止ajax重复请求的方法(GET和POST)
    复制代码 代码如下:

    /*
    防止ajax重复请求的GET和POST方法
    */
    jQuery.extend({
    getx:function(url,data,callback,sender){
    var params={url:url,data:null,callback:null,sender:null};
    for(var i=1;iarguments.length;i++){
    if(arguments[i]!=null){
    var ptype=typeof(arguments[i]);
    if(ptype=="function"){
    params.callback=arguments[i];
    }
    else if(ptype=="string"){
    params.sender=$(arguments[i]);
    if(params.sender.data("isRequesting"))
    return null;
    }
    else if(ptype=="object"){
    if(arguments[i].tagName || arguments[i].selector){
    params.sender=$(arguments[i]);
    if(params.sender.data("isRequesting"))
    return null;
    }
    else{
    params.data=arguments[i];
    }
    }
    }
    }
    params.sender.data("isRequesting",true);
    return $.get(params.url,params.data,function(data,status){
    params.sender.data("isRequesting",false);
    if(data=="unlogin"){
    window.top.location.href="/login.aspx";
    return;
    }
    if(params.callback){
    params.callback (data,status);
    }
    });
    },
    postx:function(){
    var params={url:url,data:null,callback:null,sender:null};
    for(var i=1;iarguments.length;i++){
    if(arguments[i]!=null){
    var ptype=typeof(arguments[i]);
    if(ptype=="function"){
    params.callback=arguments[i];
    }
    else if(ptype=="string"){
    params.sender=$(arguments[i]);
    if(params.sender.data("isRequesting"))
    return null;
    }
    else if(ptype=="object"){
    if(arguments[i].tagName || arguments[i].selector){
    params.sender=$(arguments[i]);
    if(params.sender.data("isRequesting"))
    return null;
    }
    else{
    params.data=arguments[i];
    }
    }
    }
    }
    params.sender.data("isRequesting",true);
    return $.post(params.url,params.data,function(data,status){
    params.sender.data("isRequesting",false);
    if(data=="unlogin"){
    window.top.location.href="/login.aspx";
    return;
    }
    if(params.callback){
    params.callback (data,status);
    }
    });
    }
    })

    当然,这里可以抽出共同的一部分,也可以去封装$.ajax方法,但这里只是笔记...
    您可能感兴趣的文章:
    • jQuery的 $.ajax防止重复提交的两种方法(推荐)
    • JS Ajax请求如何防止重复提交
    • jQuery validate插件实现ajax验证重复的2种方法
    • 防止重复发送Ajax请求的解决方案
    • Ajax局部更新导致JS事件重复触发问题的解决方法
    • AJAX避免用户重复提交请求实现方案
    • Ajax校验是否重复的实现代码
    上一篇:ajax后退解决方案
    下一篇:好用的AJAX类代码分享
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    防止ajax重复请求的方法(GET和POST) 防止,ajax,重复,请求,的,