本文主要是介绍微信扫码支付模式二支付状态Ajax轮询实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Ajax 轮训支付状态代码:
<span style="font-size:18px;"><script>//设置每隔1000毫秒执行一次load() 方法setInterval(function(){load()},1000);function load(){var xmlhttp; if (window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); }else{ // code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function(){ if (xmlhttp.readyState==4 && xmlhttp.status==200){ trade_state=xmlhttp.responseText;if(trade_state=='SUCCESS'){document.getElementById("myDiv").innerHTML='支付成功';document.getElementById('green').style.background="green";//alert(transaction_id);//延迟3000毫秒执行tz() 方法setTimeout(function(){tz()},3000);function tz(){window.location.href="要跳转的URL路径";}}else if(trade_state=='REFUND'){document.getElementById("myDiv").innerHTML='转入退款';}else if(trade_state=='NOTPAY'){document.getElementById("myDiv").innerHTML='请扫码支付';}else if(trade_state=='CLOSED'){document.getElementById("myDiv").innerHTML='已关闭';}else if(trade_state=='REVOKED'){document.getElementById("myDiv").innerHTML='已撤销';}else if(trade_state=='USERPAYING'){document.getElementById("myDiv").innerHTML='用户支付中';}else if(trade_state=='PAYERROR'){document.getElementById("myDiv").innerHTML='支付失败';}} } //orderquery.php 文件返回订单状态,通过订单状态确定支付状态xmlhttp.open("POST","orderquery.php",true); //下面这句话必须有 //把标签/值对添加到要发送的头文件。 xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); xmlhttp.send("out_trade_no=<?php echo $payment_notice['notice_sn'];?>"); }</script></span>
这篇关于微信扫码支付模式二支付状态Ajax轮询实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!