關於IOS調用微信支付jsapi不起作用的解決方法


微信支付時,安卓機調用 jsapi可以支付,IOS就不行,點擊立即支付,直接返回原立即支付頁面,跟刷新頁面差不多,解決方案很簡單:兩句話而已。

不得不說,微信支付坑太多了,我擦。。。。。

 <script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>

<asp:Button ID="btnSubmit" runat="server" Text="立即支付" OnClientClick="javascript:callpay();return false;" />

 

js:

//調用微信JS api 支付
function jsApiCall(){
WeixinJSBridge.invoke(
'getBrandWCPayRequest',<%=wxJsApiParam%>,function (res){
  if (res.err_msg == "get_brand_wcpay_request:ok") {
  alert("微信支付成功!");
  } else if (res.err_msg == "get_brand_wcpay_request:cancel") {
  alert("用戶取消支付!");
  } else {
  alert(res.err_msg);
  alert("支付失敗!");
  }
  }
  );
}

function callpay(){
  //WeixinJSBridge.invoke()
  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();
  }
}

html:

<body>
<form id="form2" runat="server" style="text-align:center;">
<img class="logo_g" src="../Templates/vshop/t7/images/logo.png" />
<asp:Button ID="btnSubmit" runat="server" Text="立即支付" OnClientClick="javascript:callpay();return false;" />
</form>
</body>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM