💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
``` define(['jquery', 'bootstrap', 'backend', 'table', 'form','clipboard'], function ($, undefined, Backend, Table, Form,ClipboardJS) { var Controller = { index: function () { // 初始化表格参数配置 Table.api.init({ extend: { index_url: 'test/index' + location.search, add_url: 'test/add', edit_url: 'test/edit', del_url: 'test/del', multi_url: 'test/multi', import_url: 'test/import', table: 'test', } }); var table = $("#table"); //当表格数据加载完成时 table.on('load-success.bs.table', function (e, data) { //这里可以获取从服务端获取的JSON数据 if(data.html!=''&&data.html!=null){ //$("#createhtml").html(data.html); } }); // 初始化表格 //,events: Controller.api.events.copy, formatter: Controller.api.formatter.copy //,sortable:true ,visible:false , operate:'LIKE %...%' ,custom:{'0':'success','1':'danger'} //,operate: 'FIND_IN_SET' ,placeholder: '关键字,模糊搜索' // defaultValue:Moment().subtract(6, 'days').startOf('day').format('YYYY-MM-DD')+ ' - ' +Moment().endOf('day').format('YYYY-MM-DD'), table.bootstrapTable({ url: $.fn.bootstrapTable.defaults.extend.index_url, pk: 'id', sortName: 'weigh', singleSelect: true, //启用单选 pagination:false, //searchFormVisible: true, //是否始终显示搜索表单 //fixedColumns: true, //fixedRightNumber: 1, //pageSize: 15, columns: [ [ {checkbox: true}, {field: 'id', title: __('Id')}, {field: 'admin_id', title: __('Admin_id')}, {field: 'category_id', title: __('Category_id')}, {field: 'category_ids', title: __('Category_ids'), operate: 'LIKE'}, {field: 'week', title: __('Week'), searchList: {"monday":__('Week monday'),"tuesday":__('Week tuesday'),"wednesday":__('Week wednesday')}, formatter: Table.api.formatter.normal}, {field: 'flag', title: __('Flag'), searchList: {"hot":__('Flag hot'),"index":__('Flag index'),"recommend":__('Flag recommend')}, operate:'FIND_IN_SET', formatter: Table.api.formatter.label}, {field: 'genderdata', title: __('Genderdata'), searchList: {"male":__('Genderdata male'),"female":__('Genderdata female')}, formatter: Table.api.formatter.normal}, {field: 'hobbydata', title: __('Hobbydata'), searchList: {"music":__('Hobbydata music'),"reading":__('Hobbydata reading'),"swimming":__('Hobbydata swimming')}, operate:'FIND_IN_SET', formatter: Table.api.formatter.label}, {field: 'title', title: __('Title'), operate: 'LIKE'}, {field: 'image', title: __('Image'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image}, {field: 'images', title: __('Images'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.images}, {field: 'attachfile', title: __('Attachfile'), operate: false}, {field: 'keywords', title: __('Keywords'), operate: 'LIKE'}, {field: 'description', title: __('Description'), operate: 'LIKE'}, {field: 'city', title: __('City'), operate: 'LIKE'}, {field: 'price', title: __('Price'), operate:'BETWEEN'}, {field: 'views', title: __('Views')}, {field: 'startdate', title: __('Startdate'), operate:'RANGE', addclass:'datetimerange', autocomplete:false}, {field: 'activitytime', title: __('Activitytime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false}, {field: 'year', title: __('Year')}, {field: 'times', title: __('Times')}, {field: 'refreshtime', title: __('Refreshtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, {field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, {field: 'weigh', title: __('Weigh'), operate: false}, {field: 'switch', title: __('Switch'), searchList: {"1":__('Yes'),"0":__('No')}, table: table, formatter: Table.api.formatter.toggle}, {field: 'status', title: __('Status'), searchList: {"normal":__('Normal'),"hidden":__('Hidden')}, formatter: Table.api.formatter.status}, {field: 'state', title: __('State'), searchList: {"0":__('State 0'),"1":__('State 1'),"2":__('State 2')}, formatter: Table.api.formatter.normal}, {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate} ] ] }); // 为表格绑定事件 Table.api.bindevent(table); }, recyclebin: function () { // 初始化表格参数配置 Table.api.init({ extend: { 'dragsort_url': '' } }); var table = $("#table"); // 初始化表格 table.bootstrapTable({ url: 'test/recyclebin' + location.search, pk: 'id', sortName: 'id', columns: [ [ {checkbox: true}, {field: 'id', title: __('Id')}, {field: 'title', title: __('Title'), align: 'left'}, { field: 'deletetime', title: __('Deletetime'), operate: 'RANGE', addclass: 'datetimerange', formatter: Table.api.formatter.datetime }, { field: 'operate', width: '130px', title: __('Operate'), table: table, events: Table.api.events.operate, buttons: [ { name: 'Restore', text: __('Restore'), classname: 'btn btn-xs btn-info btn-ajax btn-restoreit', icon: 'fa fa-rotate-left', url: 'test/restore', refresh: true }, { name: 'Destroy', text: __('Destroy'), classname: 'btn btn-xs btn-danger btn-ajax btn-destroyit', icon: 'fa fa-times', url: 'test/destroy', refresh: true } ], formatter: Table.api.formatter.operate } ] ] }); // 为表格绑定事件 Table.api.bindevent(table); }, add: function () { Controller.api.bindevent(); }, edit: function () { Controller.api.bindevent(); }, api: { bindevent: function () { Form.api.bindevent($("form[role=form]")); }, formatter:{ copy:function (value,row,index) { var width = this.width != undefined ? (this.width.match(/^\d+$/) ? this.width + "px" : this.width) : "250px"; if (value=="" ||value==null ||value =='null') value ='-'; var copy=__('Click copy'); return '<button class="btn btn-copy btn-xs bg-success" data-clipboard-text="'+value+'" data-original-title="'+copy+'" data-toggle="tooltip">' + '<div style="white-space: nowrap; text-overflow:ellipsis; overflow: hidden; max-width:"'+ width +'";>'+ value +' </div>' + '</button>'; } }, events:{ copy:{ 'click .btn-copy':function (e,value,row,index) { var clipboard=new ClipboardJS(".btn"); Toastr.info(__("Copy successfully")); } } } } }; return Controller; }); ```