解決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是線程阻塞的,而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-08javascript下function聲明一些小結(jié)
function聲明一些東西,我們都知道function和var一樣是預(yù)處理的在js里面,但是到底什么是函數(shù)聲明呢,我們來(lái)看幾個(gè)例子2007-12-12javascript 發(fā)布-訂閱模式 實(shí)例詳解
這篇文章主要介紹了javascript 發(fā)布-訂閱模式,結(jié)合實(shí)例形式詳細(xì)分析了javascript發(fā)布-訂閱模式基本功能、原理、實(shí)現(xiàn)方法與相關(guān)使用技巧,需要的朋友可以參考下2023-06-06js實(shí)現(xiàn)一個(gè)簡(jiǎn)單的MVVM框架示例
下面小編就為大家分享一篇js實(shí)現(xiàn)一個(gè)簡(jiǎn)單的MVVM框架示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01JavaScript實(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