layer.open()利用代碼實現偽阻塞


   今天在項目中遇到需要彈框處理的問題,,當用戶點擊某個單選框時,需要進行確認操作,,常規的情況下,因為layer.open()和layer.confirm()都是異步執行的, 在點擊單選框之后單選框會立馬選中, 彈框的效果心痛虛設.

后來想到在用戶點擊之前可以先對當前點擊的按鈕進行記錄,,因為此時彈框是異步的,,直接返回false讓單選框不選中,然后在對彈框條件進行判斷,,滿足條件讓剛才記錄的單選選中就好.思路就是這樣,一實驗,果然好使.

代碼如下:..

$("input[name='SendDetailFormMap.SEND_TYPE']").click(function () {
    debugger
    var radio=$(this);  //用來記錄被點擊的按鈕
    if (addCardFlag) {
        layer.open({
            title: '注意',
            content: '變更類型將會刪除所有生成的類型,確定嗎?'
            , btn: ['確認', '取消']
            , yes: function (index) {
                radio.prop("checked",true);   //點擊確認,讓按鈕被選中
                //執行代碼
                layer.close(index)
            }
        });
    }
    return false;   //返回false表示此按鈕不會選中
})            

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM