| 
注册时间2020-7-24最后登录2021-5-17阅读权限10积分18精华0帖子0
 
 
 | 
| 最新封装: 复制代码$.extend({
    // 表格:http://miniui.com/docs/api/index.html#ui=datagrid
    dataGrid: {
      init: function (myOptions, successFn) {
        // 默认配置
        const options = {
          style: 'height:100%',
          ajaxType: 'get',
          dataType: 'json',
          contentType: 'application/x-www-form-urlencoded;charset=utf-8',
          pageSize: 10,
          sizeList: [10, 20, 30, 50, 100],
          // 允许单元格编辑。此模式下,行编辑 API 将失效。
          allowCellEdit: true,
          allowCellSelect: true,
          // 显示斑马纹
          allowAlternating: true,
          // 允许选择行
          allowRowSelect: true,
          // 数据为空时显示提示文本
          showEmptyText: true,
          // 数据为空时的提示文本
          emptyText: '未查询到匹配数据',
          // 是否显示修改的红色小三角
          showModified: false,
          // 显示列菜单。实现显示、隐藏列。
          showColumnsMenu: true,
        };
        // 将默认配置合并到新配置对象中
        $.extend(true, options, myOptions);
        const _datagrid = mini.get(options.selectorId);
        // 将配置赋值给表格,参数不直接用 options,因为此方法会修改参数的值
        _datagrid.set(jQuery.extend(true, {}, options));
        /**
         * 重写 reload 方法
         * @param params 请求参数
         * @param isAppend 是否追加请求参数
         */
        _datagrid.reload = function (params, isAppend) {
          // 是否覆盖参数
          if (params) {
            if (isAppend === true) {
              if (typeof params === 'string') {
                const newParams = JSON.parse(options.params);
                options.params = JSON.stringify($.extend(true, newParams, JSON.parse(params)));
              } else {
                $.extend(true, options.params, params);
              }
            } else {
              options.params = params;
            }
          }
          // 请求列表数据
          $.ajax({
            url: options.url,
            data: options.params,
            dataType: options.dataType,
            contentType: options.contentType,
            type: options.ajaxType,
            success: function (data, code, msg) {
              if (code === 0) {
                $.jBox.showNotice({ color: 'red', content: msg });
              } else {
                // 将列表数据赋值给表格
                _datagrid.setData(data);
                // 执行参数事件
                if (successFn) {
                  successFn();
                  // _datagrid.on('load', successFn);
                }
              }
            }
          });
        };
        _datagrid.reload();
      }
    }
});
 | 
 |