您的位置:首页 > Web前端 > BootStrap

Bootstrap的datatable控件

2017-05-02 09:56 281 查看

Datatable控件

使用非常简单,页面效果如下



首先,添加datatable控件的引用。

@*table控件*@
<link href="~/Content/BootStrap/frontmcoinquery/bootstrap-table.css" rel="stylesheet" />
<script src="~/Content/BootStrap/frontmcoinquery/bootstrap-table.js"></script>
<script src="~/Content/BootStrap/frontmcoinquery/bootstrap-table-zh-CN.js"></script>


链接:http://pan.baidu.com/s/1hrUADco 密码:qx0e

页面代码,在适当的位置写一个标签即可

<table id="table"></table>


JavaScript代码

//初始化Table
function InitTable() {
var oTableInit = new Object();
datetime = document.getElementById('nowdate').value;
//alert(datetime);
//初始化Table
$("#table").bootstrapTable('destroy');
$('#table').bootstrapTable({
url: '/DayDetails/QueryTableInfo',   //请求后台的URL(*)
method: 'get',        //请求方式(*)
//toolbar: '#toolbar',  //工具按钮用哪个容器
striped: true,        //是否显示行间隔色
//cache: false,         //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
pagination: true,     //是否显示分页(*)
//sortable: true,       //是否启用排序
//sortOrder: "asc",     //排序方式
queryParams: Search,  //传递参数(*)
sidePagination: "client",     //分页方式:client客户端分页,server服务端分页(*)
pageNumber: 1,                //初始化加载第一页,默认第一页
pageSize: 10,                 //每页的记录行数(*)
pageList: [10, 25, 50, 100],  //可供选择的每页的行数(*)
//search: false,                //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
//strictSearch: true,
//showColumns: true,      //是否显示所有的列
//showRefresh: true,     //是否显示刷新按钮
//minimumCountColumns: 1, //最少允许的列数
//clickToSelect: true,    //是否启用点击选中行
height: 500,            //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
//uniqueId: "id",         //每一行的唯一标识,一般为主键列
//showToggle: true,       //是否显示详细视图和列表视图的切换按钮
//cardView: true,         //是否显示详细视图
//detailView: false,      //是否显示父子表
columns: [{
checkbox: true
}, {
field: 'quesType',
title: '试题类别'
}, {
field: 'quesContent',
title: '试题详情'
}, {
field: 'quesScore',
title: '试题总分'
}, {
field: 'score',
title: '用户得分'
}]
});
//参数传递
function Search() {
var temp = {
datetime: $("#nowdate").val(),
};
return temp;
}
}


参数传递的问题,在queryParams后面写一个方法名,并在下面写一个方法,将需要传递的参数放到给方法中即可

queryParams: Search,  //传递参数(*)
//参数传递
function Search() {
var temp = {
datetime: $("#nowdate").val(),
};
return temp;
}


Datatable控件,使用的时候会有一个问题,就是第一次查询的时候,它会执行datatable初始化代码,调用Controller中的后台方法,显示查询的结果,但是,第二次点击查询的时候,就不会再走Controller了。

解决方法,datatable控件只能初始化一次,必须销毁之后,才能进行第二次初始化,否则只会响应一次,之后就不会再进行数据的重新加载。

销毁datatable控件的代码

$("#table").bootstrapTable('destroy');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: