Layui全局通用function

发布于 2019-04-21  7260 次阅读


Layui定义全局调用function.

在模块中使用window.functionName = function(paramList){}

在需要使用到这些方法的地方引入全局function定义的文件即可

openPage(title, url, width, height, data),打开一个弹窗,参数,弹窗标题,弹窗地址,弹窗宽度,弹窗高度,传递的数据(暂时无法将数据传递到弹窗的页面,官方暂未支持),代码如下:

layui.use(['layer'], function () {
    var $ = layui.jquery, layer = layui.layer;
    //通用弹窗
    window.openPage = function (title, url, width, height, data) {
        layer.open({
            type: 2
            , title: title
            , content: url
            , maxmin: true
            , area: [width, height]
            , data: data
            /*,btn: ['确定', '取消']
            ,yes: function(index, layero){
                //点击确认触发 iframe 内容中的按钮提交
                layer.msg( '确定');
                var submit = layero.find('iframe').contents().find("#layuiadmin-app-form-submit");
                submit.click();
            }*/
        });

    }
});

getUrlParam(key),获取Url中的参数对应的值

window.getUrlParam = function (key) {
    //获取url参数
    var reg = new RegExp("(^|&)" + key + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return unescape(r[2]);
    return null;
}
表单Select控件,动态增加值
    /**
     * select动态添加节点
     * @param url 数据接口
     * @param controlid 控件ID
     * @param levels 1为普通下拉框,2为联动下拉框,需将原数据清除
     */
    function addOption(url, controlid, levels) {

        $.get(url, function (result) {
            if (levels == 2) {
                //清除控件的所有值
                $(controlid).empty();
            }
            var data = result.data;
            var str = "";
            for (var i = 0; i < data.length; i++) {
                str += "<option value='" + data[i].id + "'>" + data[i].name + "</option>"
            }
            $(controlid).append(str);
            form.render("select");
        });
    }


个人博客,用于记录工作日常的问题。