您的位置:首页 > 移动开发 > 微信开发

js解决按钮被多次点击的问题(微信支付-支付提交)

2016-08-15 09:04 465 查看
下面是我在微信支付项目中遇到的一个致命的问题以及解决的方法,希望大家给出宝贵的意见。


问题

在微信网页支付过程中,当多次点击“立即支付”的按钮,会跳出多个微信支付的界面,用户必须依次关闭各个界面,还会出现手机卡死的现象,这无疑是一个致命的问题,严重影响用户的体验。

解决方法

在这里我使用的方法是:采用标志来判断,每次点击都要对这个标志进行判断。一段时间后对标志进行复位。具体的代码如下:

<a id="submit" class="hot-btn mar_0_10 mar_b_20" onclick="jspay123();">立即支付</a>


<script type="text/javascript">

var clicktag = 0;  //标志
function jspay123() {
var openid = "${openid}";
var money = $("#MONEY").val();
var name = $('#name').val();
var id = $('#jiqi').val();
if (clicktag == 0) {  //判断标志
clicktag = 1;   //进行标志,防止多次点击
$.post("/pub/ajax/", {openid:openid,money:money,name:name,id:id}, function(data){
var appId = data.appId;
var timeStamp = data.timeStamp;
var nonceStr = data.nonceStr;
var wxPackage = data.wxPackage;
var signType = data.signType;
var paySign = data.paySign;
var name = data.name;
var id = data.id;
var money1 = data.money;
pay(appId,timeStamp,nonceStr,wxPackage,signType,paySign,name,id,money1);
}, "json");
//5秒后复位标志,可以进行再次点击
setTimeout(function () { clicktag = 0 }, 5000);
}

}
</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  支付 微信
相关文章推荐