最近研究bootstrap,它仅提供视觉效果,对于数据列表之类的并未涉及,网上找了一下,找到一个Table插件。
名为bootstrapTable。
官方地址:http://bootstrap-table.wenzhixin.net.cn/examples/
github:https://github.com/wenzhixin/bootstrap-table
因为英文差,研究了半天,做了一个demo,将就看
HTML:
<table class="table" id="dataShow" >
<thead>
<tr>
<th data-checkbox="true">选择</th>
<th data-field="rkey">供应商名称</th>
<th data-field="rkey">供应商编码</th>
<th data-field="name">物料编码</th>
<th data-field="sex">申请类型</th>
<th data-field="birthdayString">试用申请编码</th>
<th data-field="age">试用状态</th>
<th data-field="age">厂别</th>
<th data-field="age">审批状态</th>
<th data-field="birthday">申请时间</th>
<th data-field="age">试用结果</th>
</tr>
</thead>
</table>
JS:
var currPageIndex = 0;
var currLimit = 10;
$(function () {
$("#dataShow").bootstrapTable({
url: "TradHandler.ashx",
sortName: "rkey",//排序列
striped: true,//條紋行
sidePagination: "server",//服务器分页
//showRefresh: true,//刷新功能
//search: true,//搜索功能
clickToSelect: true,//选择行即选择checkbox
singleSelect: true,//仅允许单选
//searchOnEnterKey: true,//ENTER键搜索
pagination: true,//启用分页
escape: true,//过滤危险字符
queryParams: getParams,//携带参数
pageCount: 10,//每页行数
pageIndex: 0,//其实页
method: "get",//请求格式
//toolbar: "#toolBar",
onPageChange: function (number, size) {
currPageIndex = number;
currLimit = size
},
onLoadSuccess: function ()
{
$("#searchBtn").button('reset');
}
});
//搜索
$("#searchBtn").click(function () {
$(this).button('loading');
var nullparamss = {};
$("#dataShow").bootstrapTable("refresh", nullparamss);
});
//enter键搜索
$("#searchKey").keydown(function (event) {
if (event.keyCode == 13)
{
$("#searchBtn").click();
}
});
//阻止enter键提交表单
$("#mainForm").submit(function () {
return false;
});
});
//默认加载时携带参数
function getParams(params) {
var searchKey = $("#searchKey").val();
return { bysex: 1, limit: params.limit, offset: params.offset, search: searchKey };
}
TradHandler.ashx:
/// <summary>
/// 获取批量数据示例
/// </summary>
/// <param name="context"></param>
private void getTradList(HttpContext context)
{
//用于序列化实体类的对象
JavaScriptSerializer jss = new JavaScriptSerializer();
#region 模拟数据获取
List<SimpleModel> list = new List<SimpleModel>();
for (int i = 0; i < 1000; i++)
{
list.Add(new SimpleModel() { age = 18, name = "小李" + i, rkey = i + 1, sex = "男" });
}
//请求中携带的条件
string bysex = context.Request.Params["bysex"];
string searchKey = context.Request.Params["search"];
//請求中攜帶的頁數和下標
int dataIndex = Convert.ToInt32(context.Request.Params["offset"]);
int pageCount = Convert.ToInt32(context.Request.Params["limit"]);
//查询满足条件的数据
List<SimpleModel> getList;
if (bysex != null && searchKey != null)
{
getList = (from p in list
where p.sex == (bysex == "0" "女" : "男") && p.name.Contains(searchKey.Trim())
select p).ToList();
}
else
{
getList = list;
}
#endregion
//将结果增加一列序号列
Dictionary<int, SimpleModel> testModel = new Dictionary<int, SimpleModel>();
for (int i=0;i< getList.Count;i++)
{
testModel.Add(i + 1, getList[i]);
}
//给分页实体赋值
PageModels<SimpleModel> model = new PageModels<SimpleModel>();
model.total = getList.Count;
if (getList.Count % pageCount == 0)
model.page = getList.Count / pageCount;
else
model.page = (getList.Count / pageCount) + 1;
//獲取對應頁的數據
model.rows = testModel.Where(t => t.Key > dataIndex && t.Key <= dataIndex + pageCount).Select(t => t.Value).ToList();
//将查询结果返回
context.Response.Write(jss.Serialize(model));
}
有同学问pagemodel实体类,这里也分享一下,泛型实体类,因为该插件需要这些属性才能正常自动绑定
[Serializable]
public class TablePageModel<T>
{
/// <summary>
/// 總行數
/// </summary>
public long total { get; set; }
/// <summary>
/// 总页数
/// </summary>
public int page { get; set; }
private List<T> _rows;
/// <summary>
/// 數據源
/// </summary>
public List<T> rows
{
get
{
if (_rows == null)
_rows = new List<T>();
return _rows;
}
set
{
_rows = value;
}
}
}
展示数据结果如下:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新动态
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]
