//RequireJS的标准语法,意思是模块依赖'jquery', 'bootstrap', 'backend', 'table', 'form'这五个模块,同时把他们加载为对应的$, undefined, Backend, Table, Form
define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
//定义一个Controller 对象,对象下有index/add/edit/api四个方法
var Controller = {
index: function () {//实现index方法的功能
// 初始化表格参数配置
Table.api.init({
extend: {
index_url: 'test/a/index' + location.search,//主页index的地址
add_url: 'test/a/add',//添加页面的url
edit_url: 'test/a/edit',//编辑页面的url
del_url: 'test/a/del',//删除页面的url
multi_url: 'test/a/multi',//多选操作的url
import_url: 'test/a/import',//导入操作的url
table: 'test',//对应的数据库表为fa_test
}
});
//给变量table赋值为一个jQuery对象,该对象的选择器被设置为id为table的元素
var table = $("#table");
// 初始化表格
table.bootstrapTable({
//指BootstrapTable默认的索引URL,它是一种加载数据的方式,可将静态数据加载到表格中
url: $.fn.bootstrapTable.defaults.extend.index_url,
//BootstrapTable中的pk:'id'表示主键,其代表了一个表的记录的唯一标识,
pk: 'id',
//用于指定表格中排序所用的列名称(这里以weight作为排序字段)
sortName: 'weigh',
//排序方式(asc表示升序,desc表示降序)
sortOrder:'asc',
//是 BootstrapTable 的一个可选设置,用于确保表格中的列总是固定在浏览器视窗里,即便列表内容滚动,也仍保持固定。固定表格操作栏
fixedColumns: true,
//在表中用于指示将固定在表右侧的列数。这意味着当您水平滚动时,这些列将保持不变,而其他列将滚动。就相当于对“操作”这1列的固定
fixedRightNumber: 1,
//表格的具体每一列的信息
columns: [
[
{checkbox: true},//开启复选框的功能
//下面均为列信息中。
//'field'使用字段名称来定义要呈现的数据字段,而'title'表示该字段的显示标题,
{field: 'id', title: __('Id')},
{field: 'user_id', title: __('User_id')},
{field: 'admin_id', title: __('Admin_id')},
{field: 'category_id', title: __('Category_id')},
]
]
});
// 为表格绑定事件
Table.api.bindevent(table);
},
//回收站
recyclebin: function () {
// 初始化表格参数配置
Table.api.init({
extend: {
'dragsort_url': ''
}
});
var table = $("#table");
// 初始化表格
table.bootstrapTable({
url: 'test/a/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: '140px',
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/a/restore',
refresh: true
},
{
name: 'Destroy',
text: __('Destroy'),
classname: 'btn btn-xs btn-danger btn-ajax btn-destroyit',
icon: 'fa fa-times',
url: 'test/a/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]"));
}
}
};
return Controller;
});
fastadmin中js页面分析
最新推荐文章于 2024-05-29 11:25:10 发布