zoukankan      html  css  js  c++  java
  • mui实现支付宝支付功能

    <!DOCTYPE html>
    <html>

    <head>
    <meta charset="utf-8">
    <title>Hello MUI</title>
    <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">

    <!--标准mui.css-->
    <link rel="stylesheet" href="css/mui.min.css">
    <link href="css/mui.picker.css" rel="stylesheet" />
    <link href="css/mui.poppicker.css" rel="stylesheet" />
    <style>
    .mui-btn {
    font-size: 20px;
    padding: 8px;
    margin: 3px;
    }

    h5.mui-content-padded {
    margin-left: 3px;
    margin-top: 20px !important;
    }

    h5.mui-content-padded:first-child {
    margin-top: 12px !important;
    }

    .ui-alert {
    text-align: center;
    padding: 20px 10px;
    font-size: 16px;
    }

    *{
    font-family: "微软雅黑";
    font-size: 17px;
    }
    .mui-input-row label{
    font-family: "微软雅黑";
    font-size: 17px;
    }

    </style>

    </head>

    <body>
    <header class="mui-bar mui-bar-nav">
    <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
    <h1 class="mui-title">在线充值</h1>
    </header>
    <div class="mui-content">
    <br />
    <center>充值金额</center>
    <form class="mui-input-group"style="margin-top:10px;">
    <div class="mui-input-row mui-radio">
    <label>30元</label>
    <input name="rad" value="30" type="radio" onclick="setoff()">
    </div>
    <div class="mui-input-row mui-radio">
    <label>50元</label>
    <input name="rad" value="50" type="radio" onclick="setoff()">
    </div>
    <div class="mui-input-row mui-radio">
    <label>100元</label>
    <input name="rad" value="100" type="radio" onclick="setoff()">
    </div>
    <div class="mui-input-row mui-radio">
    <label>200元</label>
    <input name="rad" value="200" type="radio" onclick="setoff()">
    </div>
    <div class="mui-input-row mui-radio">
    <label>其他金额</label>
    <input name="rad" value="other" type="radio" onclick="seton()">
    </div>

    <div class="mui-input-row" id="o" style="display:none;">
    <input id="mon" type="text" style="60%;" class="mui-input-clear" placeholder="请输入其他金额">
    </div>
    </form>
    <br/>
    <button id="ali_pay" class="mui-btn mui-btn-green mui-btn-success mui-btn-block">支付宝支付</button>
    <button id="wx_pay" class="mui-btn mui-btn-green mui-btn-success mui-btn-block">微信支付</button>
    </div>
    </body>
    <script src="js/mui.min.js"></script>
    <script src="js/mui.zoom.js"></script>
    <script src="js/mui.previewimage.js"></script>
    <script src="js/mui.picker.js"></script>
    <script src="js/mui.poppicker.js"></script>
    <script src="js/pub.js"></script>
    <script>
    function seton() {
    var o = document.getElementById("o");
    o.style.display = "block"; }
    function setoff(){
    var o = document.getElementById("o");
    o.style.display = "none";
    }
    function getValue() {
    var radio = document.getElementsByName("rad");
    var result;
    for(var i = 0; i < radio.length; i++) {
    if(radio[i].checked) {
    result = radio[i].value;
    }
    }
    if(result == "other") {
    var mon = document.getElementById("mon");
    var value = mon.value;
    return value;
    } else {
    return result;
    }
    }
    </script>
    <script type="text/javascript" charset="utf-8">
    (function(mui,doc){
    mui.init({
    swipeBack: true //启用右滑关闭功能
    });
    var url = OCS.getUrl();
    var wxChannel = null; // 微信支付
    var aliChannel=null;//支付宝支付
    var channel=null;
    var w = null;

    mui.plusReady(function(){
    plus.payment.getChannels(function(channels){
    aliChannel=channels[0];
    wxChannel=channels[1];
    },function(e){
    alert("获取支付通道失败:"+e.message);
    });
    document.getElementById("ali_pay").addEventListener('tap',function(){
    console.log("支付宝");
    pay("alipay");
    });
    document.getElementById("wx_pay").addEventListener('tap',function(){
    console.log("微信");
    pay("wxpay");
    });
    });

    function pay(id) {
    if(w) {
    return;
    }
    else if(id=='alipay'){
    channel=aliChannel;
    }
    else if(id='wxpay'){
    channel=wxChannel;
    }
    else {
    plus.nativeUI.alert("不支持此支付通道!", null, "充值");
    return;
    }

    var amount = getValue();
    mui.post(url+'MAP', {
    psncode: window.localStorage.getItem(OCS.token.TOKEN_USER),
    total: amount,
    token: window.localStorage.getItem(OCS.token.TOKEN_TOKEN)
    }, function(data) {
    var str ='partner="' + data.resultData.partner + '"&' + 'seller_id="' + data.resultData.seller_id;
    str += '"&' + 'out_trade_no="' + data.resultData.out_trade_no + '"&' + 'subject="' + data.resultData.subject;
    str += '"&' + 'body="' + data.resultData.body + '"&' + 'total_fee="'+amount;
    str += '"&' + 'notify_url="' + "http://notify.msp.hk/notify.htm";
    str += '"&' + 'service="' + data.resultData.service;
    str += '"&' + 'payment_type="' + data.resultData.payment_type+ '"&' + '_input_charset="' + data.resultData.input_charset;
    str += '"&' + 'it_b_pay="' + data.resultData.it_b_pay+ '"&' + 'return_url="' + data.resultData.return_url;
    str += '"&' + 'sign="' + data.resultData.sign + '"&' + 'sign_type="' + data.resultData.sign_type + '"';
    //alert(str);
    window.localStorage.setItem(OCS.token.orderMseeage, data.resultData.out_trade_no);
    if(data.success + "" == "true") {
    plus.payment.request(channel, str, function(result) {
    plus.nativeUI.alert("支付成功", function() {
    notify();
    }, "充值成功!");
    }, function(error) {
    mui.alert(error.message);
    plus.nativeUI.alert(error.message, null, "支付失败:" + error.code);
    });
    }
    }, 'json');
    }

    function notify() {
    mui.post(url+"MAPS", {
    out_trade_no: window.localStorage.getItem(OCS.token.orderMseeage),
    token: window.localStorage.getItem(OCS.token.TOKEN_TOKEN)
    }, function(data) {
    if(data.success+''=="true"){
    mui.alert('您已充值成功');
    }
    }, 'json');
    }
    })(mui, document);
    </script>

    </html>

  • 相关阅读:
    25-网易新闻iOS版使用的开源组件
    03-Xcode 6 插件失效的临时解决方案
    01-CEO才是天花板
    01-微信6.2
    01-创业视频
    03-http2翻译在线文档
    02-iOS核心动画-第一课——ViewAnimations
    24-Xcode快捷键
    02-IOS项目开发代码规范标准
    03-iOS Socket用法
  • 原文地址:https://www.cnblogs.com/qiuchunxia/p/5906979.html
Copyright © 2011-2022 走看看