layui上傳文件彈框之前的表單校驗


引用layui之后,用到上傳excel文件然后以表格形式回顯。

需求是在點擊上傳的按鈕之前需要進行一個表單的驗證(才能掉后台接口)

方法新加一個按鈕來作為點擊上傳的按鈕addBtn(真正的上傳的按鈕uploadBtn需要隱藏起來)然后讓addBtn覆蓋upload上面(可以用層級z-index來控制)當點擊addBtn是(前提表單驗證進行之后),主動喚醒uploadBtn的點擊事件

 
    /* 新增樣式 */
    .box {
        float: left;
        position: relative;
    }

    .box button {
        position: absolute;
    }

    #commit {
        z-index: 99;
    }

  

      <div class="box">
           <button class="layui-btn wordBtn" data-type="reload" id="commit">
                  校驗(import)
           </button>
         <button class="layui-btn wordBtn hide" data-type="reload" id="upload" lay-filter="import">
                  import
         </button>
     </div>    

  

//隱藏按鈕 報表上傳
        $('#commit').on('click', function () {
            var val = $("#expressType").val();
            if (val) {
                console.log('喚起點擊')
                $('#upload').click();
            } else {
                layer.alert("請選擇服務類型", {
                    icon: 2, title: '提示'
                });
            }
        })
        var uploadInst = upload.render({
            elem: "#upload", //綁定元素
            auto: true,
            accept: 'file',
            url: 'url', //上傳接口

            before: function (obj) {
                loadingIndex = layer.msg('文件上傳中...', {
                    icon: 16,
                    shade: 0.01,
                    time: 0
                })
                this.data={//傳給后台的參數
                    'type':$("#expressType").val(),
                    'expressType':tabType
                }
            },
        done: function (res) {
                console.log(res)
                let url = 'url';
                if (res.code == '200') {
                    layer.close(loadingIndex);
                    layer.alert(res.message);
                    //上傳完畢回調
                    if (tabType == 2) {
                        tableDFun(url,'')
                    } else {
                        tableDS(url,'')
                    }
                } else {
                    layer.alert(res.message);
                }
            },
            error: function () {
                //請求異常回調
                layer.alert("上傳錯誤", {
                    icon: 2, title: '提示'
                });
            }
        });

 

   

 


免責聲明!

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



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