关于微信支付,在调起支付面板之后,输密码之前不想支付了,怎么监听关闭面板这个事件?

//重定向
var directLink = function(url){
    window.location.href = url;
}
wx.chooseWXPay({
    timestamp: String(payParams.timeStamp), 
    nonceStr: payParams.nonceStr, // 支付签名随机串
    package: payParams.package, // 统一支付接口返回的package包
    signType: "MD5", // 签名方式,'MD5'
    paySign: payParams.paySign, // 支付签名
    success: function (res) {
            if (res.errMsg == "chooseWXPay:ok") { 
                $alert.ok("支付成功",directLink,directUrl);    
            }else if (res.errMsg == "chooseWXPay:cancel") {
                $alert.ok("取消支付",directLink,directUrl);    
            }else if (res.errMsg == "chooseWXPay:fail") {
                alert("支付失败");
            }else{
                //我现在的思路是想着在这里跳转行不行,测试证明好像没起作用
                 if(directUrl == "xxxxx"){
                      $alert.ok("取消支付",directLink,directUrl);
                 }
            }
    }
});

我想在还没输入密码之前点击左上角的叉关闭支付面板,然后跳转到另外一个页面,不知道有什么解决方案,能不能在前端监听到支付面板隐藏这个动作,sdk里有没有对应的方法。求大神指教~

阅读 9k
2 个回答

微信支付接口文档

参数        类型        必填    说明
timestamp   DateInt    是      时间戳从1970年1月1日00:00:00至今的秒数,即当前的时间
nonceStr    String     是      随机字符串,长度为32个字符以下。
package     String     是      统一下单接口返回的 prepay_id 参数值,提交格式如:prepay_id=*
signType    String     是      签名算法,暂支持 MD5
paySign     String     是      签名,具体签名方案参见微信公众号支付帮助文档;
success     Function   否      接口调用成功的回调函数
fail        Function   否      接口调用失败的回调函数
complete    Function   否      接口调用结束的回调函数(调用成功、失败都会执行)
新手上路,请多包涵

complete : function(res) {

if(res.errMsg == "chooseWXPay:cancel" ) {
        window.location.href="****.html"
} 

}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进