解決layer.confirm快速點(diǎn)擊會(huì)重復(fù)觸發(fā)事件的問(wèn)題
layer.confirm快速點(diǎn)擊會(huì)重復(fù)觸發(fā)事件問(wèn)題
1 .問(wèn)題描述: 快速點(diǎn)擊會(huì)出現(xiàn),重復(fù)觸發(fā)事件,像后臺(tái)發(fā)起多次請(qǐng)求,此時(shí)后臺(tái)極端=短時(shí)間內(nèi)多次請(qǐng)求,會(huì)出現(xiàn)并發(fā)問(wèn)題,數(shù)據(jù)臟讀

2.問(wèn)題分析 :查看layerUI的API發(fā)現(xiàn),系統(tǒng)的confirm是線(xiàn)程阻塞的,而layer.confirm是非阻塞的

3.問(wèn)題解決
方案1. 防止重復(fù)觸發(fā)事件,前臺(tái)js加鎖
方案2.后臺(tái)代碼加樂(lè)觀鎖
此時(shí),方案1解決這個(gè)問(wèn)題最佳
4.具體實(shí)現(xiàn):
//出庫(kù)
output: function () {
console.log("出庫(kù)請(qǐng)求---");
var lock=false;//默認(rèn)未鎖定
var myconfirm=layer.confirm('是否確認(rèn)出庫(kù)?',{btn: ['確定','取消']},function(index){
console.log('success');
console.log(lock);
//
if(!lock){
lock=true;//鎖定
//發(fā)送
console.log("ajax---");
//發(fā)送ajax
$.ajax({
url: '/dubbo/../outBoundByTask.json',
isAysn: false,
type: 'get',
contentType: 'application/json',
data:params.join('&'),
success: function (result) {
var res=$.parseJSON(result);
var code=res.code;
if(code==0){
layer.msg("操作成功!");
window.location.reload();
}else{
layer.msg(res.msg);
}
}
});
}
layer.close(myconfirm);
}
,function(index){
console.log('fail');
});
}
以上這篇解決layer.confirm快速點(diǎn)擊會(huì)重復(fù)觸發(fā)事件的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- layer.confirm()右邊按鈕實(shí)現(xiàn)href的例子
- 解決layer.confirm選擇完之后消息框不消失的問(wèn)題
- layer.confirm點(diǎn)擊第一個(gè)按鈕關(guān)閉彈出框的方法
- layer.confirm取消按鈕綁定事件的方法
- layui點(diǎn)擊按鈕頁(yè)面會(huì)自動(dòng)刷新的解決方案
- 關(guān)于layui 實(shí)現(xiàn)點(diǎn)擊按鈕添加一行(方法渲染創(chuàng)建的table)
- 在Layui中實(shí)現(xiàn)開(kāi)關(guān)按鈕的效果實(shí)例
- 解決layui頁(yè)面按鈕點(diǎn)擊無(wú)反應(yīng),也不報(bào)錯(cuò)的問(wèn)題
- layui的layer.confirm如何獲取按鈕焦點(diǎn)
相關(guān)文章
極力推薦10個(gè)短小實(shí)用的JavaScript代碼段
這篇文章主要為大家極力推薦10個(gè)短小實(shí)用的JavaScript代碼段,幫助大家節(jié)省大量開(kāi)發(fā)時(shí)間,感興趣的小伙伴們可以參考一下2016-08-08
javascript下function聲明一些小結(jié)
function聲明一些東西,我們都知道function和var一樣是預(yù)處理的在js里面,但是到底什么是函數(shù)聲明呢,我們來(lái)看幾個(gè)例子2007-12-12
javascript 發(fā)布-訂閱模式 實(shí)例詳解
這篇文章主要介紹了javascript 發(fā)布-訂閱模式,結(jié)合實(shí)例形式詳細(xì)分析了javascript發(fā)布-訂閱模式基本功能、原理、實(shí)現(xiàn)方法與相關(guān)使用技巧,需要的朋友可以參考下2023-06-06
js實(shí)現(xiàn)一個(gè)簡(jiǎn)單的MVVM框架示例
下面小編就為大家分享一篇js實(shí)現(xiàn)一個(gè)簡(jiǎn)單的MVVM框架示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01
JavaScript實(shí)現(xiàn)函數(shù)重載的代碼示例
在JavaScript中并沒(méi)有直接支持函數(shù)重載的機(jī)制,但是可以通過(guò)一些技巧來(lái)模擬函數(shù)重載的效果,比如使用參數(shù)判斷,使用默認(rèn)參數(shù),對(duì)象參數(shù),這些方法都可以實(shí)現(xiàn)類(lèi)似函數(shù)重載的效果,所以本文就給大家介紹一下JavaScript如何實(shí)現(xiàn)函數(shù)重載,需要的朋友可以參考下2023-08-08

