首页 新闻 搜索 专区 学院

微信支付开发调用jsapi无反应

0
悬赏园豆:40 [已解决问题] 解决于 2017-03-30 10:16

<html>
    <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
    <head>
        
        <script type="text/javascript">
        
        function onBridgeReady(){

      alert("进入到这个方法了");  //这个可以弹出来
               WeixinJSBridge.invoke(
                   'getBrandWCPayRequest', {
                       "appId":"${appid}",     //公众号名称,由商户传入     
                       "timeStamp":"${timeStamp}",         //时间戳,自1970年以来的秒数     
                       "nonceStr":"${nonceStr}", //随机串     
                       "package":"${packageValue}",     
                       "signType":"MD5",         //微信签名方式:     
                       "paySign":"${sign}" //微信签名
                   },
                   function(res){
                   alert("res" + res);  //这个弹不出来
                        if(res.err_msg == "get_brand_wcpay_request:ok") {
                           alert("支付成功");
                           window.location.href = "${pageContext.request.contextPath}/wx/success?orderId=${orderId}";
                       }else if(res.err_msg == "get_brand_wcpay_request:fail"){
                               alert('支付失败');
                           }else if(res.err_msg == "get_brand_wcpay_request:cancel"){
                               alert('支付取消');
                           }else{
                               alert(res.err_msg);
                           }
                   }
               );
            }
        
        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();
            }          
        </script>    
        <title>订单-支付</title>
    </head>
<body>
    <script type="text/javascript">
        $(document).ready(function () {
            onBridgeReady();
        });
        
    </script>
   
</body>
</html>

zuoxian的主页 zuoxian | 初学一级 | 园豆:162
提问于:2017-03-29 17:12
< >
分享
最佳答案
0

invoke异步请求微信,然后你想同步获取反馈信息? 起码你得得到异步结果才能继续呀

收获园豆:40
流年过往 | 菜鸟二级 |园豆:464 | 2017-03-30 09:50

你是说要的到invoke的结果,才能继续吗 ?

能详细的说一下吗,谢谢了

zuoxian | 园豆:162 (初学一级) | 2017-03-30 10:02

这个问题已经解决了 ,谢谢了

zuoxian | 园豆:162 (初学一级) | 2017-03-30 10:16

@zuoxian: 说实话 我没用过JS的invoke  js一般都是ajax异步的 你这个真没用过,按照c#里面委托异步来说 应该会有个endinvoke 来接收异步请求结果  你需要这个结果才能进行判断,从代码方面看来 他是直接异步了 随后那些都没执行 直接退出了 所以下面没有结果

流年过往 | 园豆:464 (菜鸟二级) | 2017-03-30 10:16

@流年过往: 已经得到直接过了 ,虽然是是失败的结果,不过总算进了一步,谢谢了

zuoxian | 园豆:162 (初学一级) | 2017-03-30 10:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册