这里记录的仅是自己遇到的问题,因为同一个坑连踩再次,踩的我都开始怀疑人生了。
先描述问题:页面调用微信支付,支付成功后页面不跳转(安卓机不跳,苹果机没问题),但是页面顶部进度条显示,和页面标题已经发生变化,
原因: 先看下面代码,正常情况下 下单成功后调用 微信onBridgeReady方法,一切正常,但是由于我的代码逻辑有问题,onBridgeReady被调用再次,一次是多写了一个调用onBridageReady()方法,第二次是立即支付按钮被绑了两次点击事件,导致点一次按钮调用了两次onBridgeReady方法。 排查问题的时候可以看前端页面是否弹起了两次支付窗口(关掉主动再弹一次),或者查看后端api是不是被请求了两次
以上只是自己遇到的问题作下记录,仅供参考。
function onBridgeReady() { WeixinJSBridge.invoke('getBrandWCPayRequest', data.payParams, function(res) { // 判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回 ok,但并不保证它绝对可靠。 if(res.err_msg == "get_brand_wcpay_request:ok") { _replace('./success.html?caseId=' + caseId + '&doctorId=' + doctorId) } else { //支付失败 } }); } if(typeof WeixinJSBridge == "undefined") { if(document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); } else if(document.attachEvent) { document.attachEvent('WeixinJSBridgeReady', onBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onBridgeReady); } } else { onBridgeReady(); }