#### 发起支付(JS版)
在PHP中发起支付时,粉丝在支付时界面会跳转至系统的收银台界面中(PHP版中文末的图),对于希望能在当前页面直接处理的开发者,微擎提供了利用JS发起支付的方式,该方式如果是微信支付会直接在当前页面中支付,如果是百度钱包、支付宝其它支付则会直接跳转至支付方进行支付。
>[info]util.pay(option)
option 参数列表如下:
* orderFee 要支付的金额
* payMethod 发起的支付类型,分别为 微信支付(wechat)、百度钱包(baifubao)、支付宝(alipay)、银联支付(unionpay)
* orderTitle 支付标题
* orderTid 充值模块中的订单号,此号码用于业务模块中区分订单,保证在业务中是唯一即可
* module 发起支付的模块,支付成功后会通知该模块
* success 支付成功回调函数,
* fail 支付失败时回调函数
* complete 支付完成(成功和失败)时回调函数
>[warning] 注意:orderTid 业务订单号此值,在调用util.pay方法之前应当先ajax请求一个订单号,然后再发起支付。
*示例*
```
<button type="button" class="mui-btn mui-btn-block mui-disabled js-wechat-pay">微信支付(加载中)</button>
<button type="button" onclick="dopayBaidu()" class="mui-btn mui-btn-block">百度钱包</button>
<script type="text/javascript">
//发起微信支付,微信支付依赖于 WeixinJSBridge 组件,所以发起时应该在ready事件中进行
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
$('.js-wechat-pay').removeClass('mui-disabled');
$('.js-wechat-pay').click(function(){
//先通过AJAX获取最新的订单号
$.getJSON("xxxx.php", function(data, status){
if(status == 'success'){
util.pay({
orderFee : data.fee,
payMethod : 'wechat',
orderTitle : '充值' + data.fee + '元',
orderTid : data.ordertid,
module : 'recharge',
success : function(result) {
alert('支付成功');
},
fail : function(result) {
alert('fail : ' + result.message);
},
complete : function(result) {
location.reload();
}
});
}
});
});
$('.js-wechat-pay').html('微信支付');
});
//百度钱包和其它支付则无浏览器组件要求,可直接使用
function dopayBaidu() {
util.pay({
orderFee : 0.01,
payMethod : 'baifubao',
orderTitle : '充值10元',
orderTid : 1234567104,
module : 'recharge',
success : function(res) {
alert('支付成功');
},
fail : function(result) {
alert('fail : ' + result.message);
},
complete : function(result) {
alert('complete : ' + result.message);
}
});
}
</script>
```
效果如下:
![](https://box.kancloud.cn/044c0f5b5ea6f852a51e2755c59b34a8_339x604.jpg)
- 入门
- 系统安装
- 接入公众平台
- 关键字回复
- 更上一层楼
- 编码规范
- php编码规范
- html&css编码规范
- JavaScript编码规范
- 系统概述
- 结构概述
- 入口脚本
- 微擎MVC
- URL路由&创建
- $_W&全局变量
- 加载器
- 错误处理
- 日志记录
- 模板
- 模板标签
- 数据调用
- 常用变量
- 手机端组件
- 概述及依赖
- 图像上传
- 弹出选项
- 后台组件
- 概述及依赖
- 后台文件上传
- 富文本编辑器
- 系统链接选择器
- 其它常用组件
- 数据库
- 参数绑定
- 数据操作
- 主从配置
- 连接其它数据库
- 缓存
- 配置
- 缓存操作
- Http请求
- 概述及依赖
- GET&POST请求
- 发送邮件
- 会员与积分
- 统一用户中心
- 借用OAuth
- 积分操作
- 资料操作
- 卡券
- 营销卡券
- 会员卡
- 消息响应
- 消息概述
- 消息响应
- 微信API
- 公众号AccessToken
- 共享收货地址(废弃)
- 共享收货地址(新)
- 粉丝标签
- 客服消息
- 模板消息
- 粉丝信息
- 素材
- 群发
- 二维码
- 在线支付
- 概述及依赖
- 发起支付(PHP)
- 发起支付(JS)
- 验证支付
- 模块
- 设计模块
- 目录结构
- module.php
- processor.php
- site.php
- receiver.php
- 模块高级专题
- 自定义分享
- 智能应答
- 微信卡券
- 远程附件
- 权限控制
- 特殊事件触发模块
- 粉丝信息
- 小程序
- 概述
- Uitl类
- 云服务
- 云API
- 系统接口
- 模块云配置
- 云短信
- 云短信错误代码
- 云短信发送函数
- 批量群发短信
- 应用推广
- 悬赏文案
- 折扣码
- 系统消息
- 开发者等级资料认证
- 应用标签
- 模块自动检测订阅支持
- 小程序
- 开发实例
- 参数设置
- 常见问题