fastadmin 使用技巧

列表搜索框

var table = $("#table");

table.on('post-common-search.bs.table', function (event, table)
  {
      var form = $("form", table.$commonsearch);
      $("input[name='user_id']", form).addClass("selectpage").data("source", "user/user/index").data("primaryKey", "id").data("field", "nickname").data("orderBy", "nickname asc").data("pageSize", 6);

      Form.events.cxselect(form);
      Form.events.selectpage(form);
  });

excel 导出

  $search = $this->request->post('search');
  $ids = $this->request->post('ids');
  $filter = $this->request->post('filter');
  $op = $this->request->post('op');
  $columns = $this->request->post('columns');

  $whereIds = $ids == 'all' ? '1=1' : ['id' => ['in', explode(',', $ids)]];
	$this->request->get(['search' => $search, 'ids' => $ids, 'filter' => $filter, 'op' => $op]);
  list($where, $sort, $order, $offset, $limit) = $this->buildparams();

  $line = 1;
  $list = [];
  $this->model
      ->field($columns)
      ->where($where)
      ->where($whereIds)
      ->select();
var submitForm = function (ids, layero) {
var options = table.bootstrapTable('getOptions');
   console.log(options);
   var columns = [];
   $.each(options.columns[0], function (i, j) {
       if (j.field && !j.checkbox && j.visible && j.field != 'operate') {
           columns.push(j.field);
       }
   });
   var search = options.queryParams({});
   $("input[name=search]", layero).val(options.searchText);
   $("input[name=ids]", layero).val(ids);
   $("input[name=filter]", layero).val(search.filter);
   $("input[name=op]", layero).val(search.op);
   $("input[name=columns]", layero).val(columns.join(','));
   $("form", layero).submit();
};
$(document).on("click", ".btn-export", function () {
   var ids = Table.api.selectedids(table);
   var page = table.bootstrapTable('getData');
   var all = table.bootstrapTable('getOptions').totalRows;
   console.log(ids, page, all);
   Layer.confirm("请选择导出的选项<form action='" + Fast.api.fixurl("test/export") + "' method='post' target='_blank'><input type='hidden' name='ids' value='' /><input type='hidden' name='filter' ><input type='hidden' name='op'><input type='hidden' name='search'><input type='hidden' name='columns'></form>", {
       title: '导出数据',
       btn: ["选中项(" + ids.length + "条)", "本页(" + page.length + "条)", "全部(" + all + "条)"],
       success: function (layero, index)
       {
           const ba = $(".layui-layer-btn a", layero)
           ba.addClass("layui-layer-btn0");
            if (ids.length === 0)
            {
                ba.eq(0).removeClass("layui-layer-btn0")
            }
            if (page.length === 0)
            {
                ba.eq(1).removeClass("layui-layer-btn0")
            }
       },
       btn1: function (index, layero)
       {
           if (ids.length > 0)
           {
               submitForm(ids.join(","), layero);
               layer.close(index);
           }

           return false;
       },
       btn2: function (index, layero)
       {
           if (page.length === 0)
           {
               return false
           }
           var ids = [];
           $.each(page, function (i, j)
           {
               ids.push(j.id);
           });
           submitForm(ids.join(","), layero);
           layer.close(index);
           return false;
       },
       btn3: function (index, layero)
       {
           submitForm("all", layero);
           layer.close(index);
           return false;
       }
   })
});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值