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>
相关文章推荐
- 解决vue 按钮多次点击重复提交数据问题
- 关于WinForm框架中点击按钮时存在的多次提交问题的解决方法
- js解决列表中按钮重复点击重复提交的问题
- 关于js中按钮类型是image时表单验证问题---点击一次可以验证再次点击直接提交--的问题
- ASP.NET多次点击提交按钮以及Session超时和丢失过期问题
- LigerUI弹窗按钮可以点击多次的问题解决
- quick 3.3 按钮多次点击出现问题的解决
- Android安卓关于避免按钮快速多次点击问题解决办法
- 解决html按钮切换绑定不同函数后点击时执行多次函数问题
- 连续点击按钮后多次发送数据问题的解决办法
- js-按钮点击后变为不可点击状态,防止多次提交
- 用js提交表单解决一个页面有多个提交按钮的问题
- iOS - 解决短时间多次点击按钮,多次响应的问题
- 解决:防止页面按钮被重复点击,导致页面重复提交的问题
- 怎么解决重复提交的问题,即网络不好的时候,提交按钮点了一次,但是却发起了多次http url请求,数据库中写入了多条重复记录(当然ID是不重复的,因为毕竟是多条http url记录)
- 用js提交表单解决一个页面有多个提交按钮的问题
- 解决ajax提交form,点击保存按钮和点击回车效果不同的问题
- 关于表单提交按钮多次点击多次触发的解决方法
- js中防止连续点击按钮导致多次重复提交数据的方法
- 在IE中必须点击input file 控件的浏览按钮才能提交上传,否则没有权限 。js文件报拒绝访问,解决办法是将input file控件定位到你要点击的地方 ,并且input file做成透明的