PC端 微信扫码支付成功之后自动跳转
作者:Alpha时间:2019-07-06 阅读数:6707 +人阅读
微信支付支持pc端扫码支付功能,但是有点不友好的是,扫码过后,当前页面状态没有变化,这点处理的和支付宝差很多。我们只能自己来试试检查刷新页面,来判断当前支付是否成功了。
实现的思路:前端页面设置定时功能,不间断的通过ajax获取后台支付数据;因为微信扫码支付后会有异步处理操作,我们通过业务逻辑修改当前订单的状态,而ajax则实时动态获取订单状态,如果检测到订单支付完成,则进行提示并跳转页面
下面是主要的前端js代码,网上转载,完全可以实现功能。
场景: PC端 微信扫码支付
结果: 支付成功 自动跳转
实现思路:
支付二维码页面,写ajax请求支付状态,请求到结果,无论成功还是失败,都跳转到相应的结果页面
具体实现方法:
html部分:
支付结果状态设定: 0 未支付 1 支付成功 2 支付失败
<input type="hidden" id="order_id" value="<?php echo $order_id;?>">
<script type="text/javascript">
function pay_status(){
var order_id = $("#order_id").val();
$.ajax({
url:'http://' + window.location.host+ '/home/cart/pay_status_check',
dataType:'json',
type:'post',
data:{'order_id':order_id},
success:function(data){
if(data == '1' ){
window.clearInterval(int); //销毁定时器
setTimeout(function(){
//跳转到结果页面,并传递状态
window.location.href="http://"+window.location.host+"/home/cart/pay_result?pay_status=success";
},1000)
}else if(data =='2'){
window.clearInterval(int); //销毁定时器
setTimeout(function(){
//跳转到结果页面,并传递状态
window.location.href="http://"+window.location.host+"/home/cart/pay_result?pay_status=fail";
},1000)
}
},
error:function(){
alert("error");
},
});
}
//启动定时器
var int=self.setInterval(function(){pay_status()},1000);
</script>
上面代码是前端页面,具体的后台程序处理可以根据自己的需要来填写,当然,也可以根据后台代码来调整前端的,怎么方便怎么来。
本站部分内容或图片来自互联网,如果侵犯了你的权益请来信告知我们删除。邮箱:595397166@qq.com
上一篇:如何限制必须使用微信打开网页

