微信扫描支付回调AJAX跳转链接

1、获取微信扫描支付对应的二维码 ,并在同时创建定时任务

  /*声明一个定时器  amount_price 

    当前页面以毫秒为计的定时器 self.setInterval 

    执行的函数wx_pay_status() 

    每隔多少毫秒进行一次  2000

*/

var amount_price =self.setInterval(function(){wx_pay_status()},2000); 

2、在执行函数中

funaction wx_pay_status(){

        var pay_id = *** ; //对应的数据库ID

        if(pay_id>0){

        var xmlhttp;//new 原生ajax对象
            if (window.XMLHttpRequest)
            {
                //  IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
                xmlhttp=new XMLHttpRequest();
            }
            else
            {
                // IE6, IE5 浏览器执行代码
                xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange=function()
            {
                if (xmlhttp.readyState==4 && xmlhttp.status==200)//状态码
                {
                    var res = xmlhttp.responseText;

                    var res_json = $.parseJSON(res);      //转换成JSON格式代码  不推荐使用eval

                    if(成功){

                        #操作

                        window.clearTimeout(weixin_set);//去掉定时器  

                    }else{    

                        #操作

                    }

                }
            }
           //选择POST格式的时候
     xmlhttp.open("POST",url,true);
            // 设置POST请求的请求头,少了的话,则后台无法接收到参数?
            xmlhttp.setRequestHeader("Content-Type"  , "application/x-www-form-urlencoded");
            // 发送请求

            xmlhttp.send("id="+pay_id);

    }else{

            var weixin_set=self.setInterval(function(){wx_pay_status()},2000);

    }

}

3、回馈成功后去除定时器window.clearTimeout(name);

        name=>定时器名称;

#########################################

    可防止JS报错定时器并不存在

     try{
           window.clearTimeout(weixin_set);//去掉定时器 
      }catch(e){

     }

    加防判断步骤 判断文本框是否获取焦点

    document.activeElement 表示当前活动的元素

     要判断的文本框

      var my_input = document.getElementById('ID???')

       if(my_input==  document.activeElement)  

        {

            OK

        }

        else    

       { 

            NO

        }



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值