h5移动端调用支付宝、微信支付的实现


Posted in HTML / CSS onJune 08, 2020

公司项目之前已有支付宝支付,现要求增加微信支付,第一次做,摸着石头过河!结果是满意的。
废话就不说了直接上代码:

var aliChannel = null; 
    var wxChannel = null;

    // 定义支付方式切换 
    var state_type = 1;
    // 选择支付方式  默认为支付宝样式
    $(".zfb").find("i").css("background-Image","url(../img/pl_8.png)");
    $(".pay").on("singleTap",".pay_c",function(){
        $(this).find("i").css("background-Image","url(../img/pl_8.png)");
        $(this).siblings().find("i").css("background-Image","url(../img/pl_9.png)");

        if($(this).find("span").text().trim() == "支付宝"){
            state_type = 1;

        }else if($(this).find("span").text().trim() == "微信"){
            state_type = 2;
        }
    })
    // 点击支付
    $('.pay_btn').unbind();
    $('.pay_btn').singleTap(function () {
        if(state_type == 1){
            // 支付宝通道
            mui.plusReady(function () { // 获取支付通道  
                plus.payment.getChannels(function (channels) {
                    for (var i in channels) {
                        if (channels[i].id == "wxpay") {
                            wxChannel = channels[i];
                        } else {
                            aliChannel = channels[i];
                        }
                    }
                }, function (e) {
                    alert("获取支付通道失败:" + e.message);
                });
            })

            mui.post('此处填写支付接口', {
               '此处填写所需参数'
            },
            function (data) {
                console.log(JSON.stringify(data));
                if (data) {
                    data = data.data.payStr;
                    plus.payment.request(aliChannel, data, function (result) {
                        
                            // 支付成功处理
                       
                    }, function (e) {
                        floatRemind("付费失败,用户已取消");
                    });
                } else {
                    plus.nativeUI.alert("支付失败");
                }
            });
        }else if(state_type == 2){
            // 微信通道
            mui.plusReady(function () { // 获取支付通道  
                plus.payment.getChannels(function (channels) {
                    for (var i in channels) {
                        if (channels[i].id == "wxpay") {
                            wxChannel = channels[i];
                        } else {
                            aliChannel = channels[i]; 
                        }
                    }
                }, function (e) {
                    alert("获取支付通道失败:" + e.message);
                });
            })

            mui.post('此处填写支付接口', {
                '此处填写所需参数'
            },
                function (data) {
                    data = JSON.stringify(data.data);
                    if (data) {
                        plus.payment.request(wxChannel, data, function (result) {
                            
                                // 支付成功处理
                           
                        }, function (msg) {
                            // JSON.stringify(msg.message)
                            floatRemind('支付失败');
                        });
                    } else {
                        plus.nativeUI.alert("支付失败");
                    }
                });
        }

        
        
    })

自己已经用过了,没有问题,支付宝可以真机调试,微信必须打包下载测试。

测试过程中有过报错-100,百度各种解决方法,后来发现不是前端问题,有人说打包必须选自有证书,自己试过了不需要,公用证书就可以的。

h5移动端调用支付宝、微信支付的实现

代码就是这些,可以直接拿去用,测试如果OK,请给点鼓励,谢谢!第一次写博客,写的不好请见谅!

到此这篇关于h5移动端调用支付宝、微信支付的实现的文章就介绍到这了,更多相关h5移动端支付宝微信支付内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
深入浅析css3 中display box使用方法
Nov 25 HTML / CSS
CSS3 清除浮动的方法示例
Jun 01 HTML / CSS
CSS3中引入多种自定义字体font-face
Jun 12 HTML / CSS
HTML5新表单元素_动力节点Java学院整理
Jul 12 HTML / CSS
HTML5 Canvas概述
Aug 26 HTML / CSS
HTML5 中新的全局属性(整理)
Jul 31 HTML / CSS
HTML5 window/iframe跨域传递消息 API介绍
Aug 26 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
May 03 HTML / CSS
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
Feb 28 HTML / CSS
HTML5页面音视频在微信和app下自动播放的实现方法
Oct 20 HTML / CSS
详解H5 活动页之移动端 REM 布局适配方法
Dec 07 HTML / CSS
html5拖拽应用记录及注意点
May 27 HTML / CSS
使用SVG实现提示框功能的示例代码
Jun 05 #HTML / CSS
Html5嵌入钉钉的实现示例
Jun 04 #HTML / CSS
浅析数据存储的三种方式 cookie sessionstorage localstorage 的异同
Jun 04 #HTML / CSS
h5页面唤起app如果没安装就跳转下载(iOS和Android)
Jun 03 #HTML / CSS
html5视频自动横过来自适应页面且点击播放功能的实现
Jun 03 #HTML / CSS
使用Html5 Stream开发实时监控系统
Jun 02 #HTML / CSS
Html5 canvas画图白板踩坑
Jun 01 #HTML / CSS
You might like
追求程序速度,而不是编程的速度
2008/04/23 PHP
php 异常处理实现代码
2009/03/10 PHP
通过具体程序来理解PHP里面的抽象类
2010/01/28 PHP
jQuery 源码分析笔记
2011/05/25 PHP
解析php php_openssl.dll的作用
2013/07/01 PHP
基于jquery的tab切换 js原理
2010/04/01 Javascript
JS获取当前网址、主机地址项目根路径
2013/11/19 Javascript
推荐8款jQuery轻量级树形Tree插件
2014/11/12 Javascript
JavaScript中constructor()方法的使用简介
2015/06/05 Javascript
Angular的$http与$location
2016/12/26 Javascript
JavaScript获取select中text值的方法
2017/02/13 Javascript
微信小程序之网络请求简单封装实例详解
2017/06/28 Javascript
vue音乐播放器插件vue-aplayer的配置及其使用实例详解
2017/07/10 Javascript
jQuery实现的简单拖拽功能示例【测试可用】
2018/08/14 jQuery
微信小程序搜索功能(附:小程序前端+PHP后端)
2019/02/28 Javascript
js脚本中执行java后台代码方法解析
2019/10/11 Javascript
python 获取本机ip地址的两个方法
2013/02/25 Python
使用python遍历指定城市的一周气温
2017/03/31 Python
选择python进行数据分析的理由和优势
2019/06/25 Python
基于Python执行dos命令并获取输出的结果
2019/12/30 Python
基于Python获取照片的GPS位置信息
2020/01/20 Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
2020/02/27 Python
python模块如何查看
2020/06/16 Python
python简单实现9宫格图片实例
2020/09/03 Python
浅谈CSS3特性查询(Feature Query: @supports)功能简介
2017/07/31 HTML / CSS
StubHub德国:购买和出售门票
2017/09/06 全球购物
西班牙太阳镜品牌:Hawkers
2018/03/11 全球购物
Lookfantastic西班牙官网:英国知名美妆购物网站
2018/06/13 全球购物
莫斯科的韩国化妆品店:Sifo
2019/12/04 全球购物
如何实现一个自定义类的序列化
2012/05/22 面试题
委托与事件是什么关系?为什么要使用委托
2014/04/18 面试题
电信专业毕业生推荐信
2013/11/18 职场文书
《蓝色的树叶》教学反思
2014/02/24 职场文书
小学秋季运动会报道稿
2014/09/30 职场文书
婚前保证书范文
2015/02/28 职场文书
廉政承诺书范文
2015/04/28 职场文书