我在微信公众号内嵌套了一个网页,大概有3%的人支付成功后无法跳转到我指定的成功页面,经常会有用户打电话过来说支付成功后没有显示结果
<script type="text/javascript">
//每隔三秒钟自动刷新验证是否支付成功,如果支付成功则跳转
$(document).ready(function () {
setInterval("ajaxstatus()", 3000);
});
//每隔三秒钟自动刷新验证是否支付成功,如果支付成功则跳转
//调用微信JS api 支付
function jsApiCall()
{
WeixinJSBridge.invoke(
'getBrandWCPayRequest',
{$jsApiParameters},
function(res){
WeixinJSBridge.log(res.err_msg);
if(res.err_msg=='get_brand_wcpay_request:ok'){
$("#bt1").hide(); //“立即支付”按钮隐藏
$("#bt2").show(); //”支付成功,查看订单详情“按钮显示
//1秒钟后自动跳转到支付成功的界面
setTimeout(function () {
location.href='{$pay_result}';
}, 1000);
}else{
//验证是否支付成功,如果支付成功则跳转到支付成功的界面
$.get("/index/newpay/pay_verification/oid/{$order_info.oid}",function(data,status){
var datas = eval("("+data+")");
if(datas.res=='success'){
setTimeout(function(){
location.href='{$pay_result}';
},1500)
}
});
}
}
);
}
function callpay()
{
if (typeof WeixinJSBridge == "undefined"){
if( document.addEventListener ){
document.addEventListener('WeixinJSBridgeReady', jsApiCall, false);
}else if (document.attachEvent){
document.attachEvent('WeixinJSBridgeReady', jsApiCall);
document.attachEvent('onWeixinJSBridgeReady', jsApiCall);
}
}else{
jsApiCall();
}
}
function ajaxstatus(){
$.get("/index/newpay/pay_verification/oid/{$order_info.oid}",function(data,status){
var datas = eval("("+data+")");
if(datas.res=='success'){
$("#btn2").show();//”支付成功,查看订单详情“按钮显示
$("#btn1").hide();//“立即支付”按钮隐藏
}else{
$("#btn1").show();//“立即支付”按钮显示
$("#btn2").hide();//”支付成功,查看订单详情“按钮显示
}
});
}
</script>