init commit
This commit is contained in:
120
public/assets/js/backend/wdsxh/questionnaire/render.js
Normal file
120
public/assets/js/backend/wdsxh/questionnaire/render.js
Normal file
@@ -0,0 +1,120 @@
|
||||
define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
|
||||
|
||||
var Controller = {
|
||||
index: function () {
|
||||
// 初始化表格参数配置
|
||||
Table.api.init({
|
||||
extend: {
|
||||
index_url: 'wdsxh/questionnaire/render/index' + location.search,
|
||||
table: 'wdsxh_questionnaire_render',
|
||||
}
|
||||
});
|
||||
|
||||
var table = $("#table");
|
||||
// 从 URL 参数中获取 questionnaire_id
|
||||
function getQuestionnaireIdFromUrl() {
|
||||
const urlParams = new URLSearchParams(window.location.search);
|
||||
return urlParams.get('questionnaire_id');
|
||||
}
|
||||
$(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);
|
||||
|
||||
var questionnaireId = getQuestionnaireIdFromUrl();
|
||||
|
||||
Layer.confirm("请选择导出的选项<form action='" + Fast.api.fixurl("wdsxh/questionnaire/render/export?questionnaire_id=") + questionnaireId + "' 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) {
|
||||
$(".layui-layer-btn a", layero).addClass("layui-layer-btn0");
|
||||
}
|
||||
, yes: function (index, layero) {
|
||||
submitForm(ids.join(","), layero);
|
||||
return false;
|
||||
}
|
||||
,
|
||||
btn2: function (index, layero) {
|
||||
var ids = [];
|
||||
$.each(page, function (i, j) {
|
||||
ids.push(j.id);
|
||||
});
|
||||
submitForm(ids.join(","), layero);
|
||||
return false;
|
||||
}
|
||||
,
|
||||
btn3: function (index, layero) {
|
||||
submitForm("all", layero);
|
||||
return false;
|
||||
}
|
||||
})
|
||||
});
|
||||
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();
|
||||
};
|
||||
|
||||
// 初始化表格
|
||||
table.bootstrapTable({
|
||||
url: $.fn.bootstrapTable.defaults.extend.index_url,
|
||||
pk: 'id',
|
||||
// fixedColumns: true,
|
||||
// fixedRightNumber: 1,
|
||||
search:false,
|
||||
showToggle: false,
|
||||
showColumns: false,
|
||||
visible: false,
|
||||
showExport:false,
|
||||
commonSearch:false,
|
||||
columns: [
|
||||
[
|
||||
{checkbox: true},
|
||||
{field: 'id', title: __('Id')},
|
||||
{field: 'wechat_id', title: __('Wechat_id')},
|
||||
{field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
|
||||
{field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate,buttons:[
|
||||
{
|
||||
text:'问卷详情',
|
||||
name: 'details',
|
||||
title: '问卷详情',
|
||||
classname: 'btn btn-xs btn-primary btn-dialog bg-aqua',
|
||||
icon: 'fa',
|
||||
url: 'wdsxh/questionnaire/render/details',
|
||||
extend:'data-area=["95%","95%"]',
|
||||
},
|
||||
]}
|
||||
]
|
||||
]
|
||||
});
|
||||
|
||||
// 为表格绑定事件
|
||||
Table.api.bindevent(table);
|
||||
},
|
||||
add: function () {
|
||||
Controller.api.bindevent();
|
||||
},
|
||||
edit: function () {
|
||||
Controller.api.bindevent();
|
||||
},
|
||||
api: {
|
||||
bindevent: function () {
|
||||
Form.api.bindevent($("form[role=form]"));
|
||||
}
|
||||
}
|
||||
};
|
||||
return Controller;
|
||||
});
|
||||
Reference in New Issue
Block a user