先上图吧这就是效果图

上代码(这一部分是工具栏的,还包括slider滑动条)

            <div class="box-body">
<div class="row">
<div class="form-group col-xs-3" style="width: 432px;">
<label for="SendUser" class="col-sm-2 control-label">重量</label>
<div class="col-sm-10">
<div class="nstSlider"
id="shapeNstSlider"
data-aria_enabled="true"
data-range_min="1"
data-range_max="3000"
data-cur_min="1"
data-cur_max="3000">
<div id="bar" class="bar"></div>
<div id="leftGrip" class="leftGrip"></div>
<div id="rightGrip" class="rightGrip"></div>
</div>
<div class="input-prepend input-append pull-left">
<input class="span2 " id="leftLabel" style="width: 50px;" onblur="leftChange(this)" type="text">
<span class="add-on"><em>ct</em></span>
</div>
<div class="input-prepend input-append pull-right">
<input class="span2" id="rightLabel" style="width: 50px;" onblur="rightChange(this)" type="text">
<span class="add-on"><em>ct</em></span>
</div>
</div>
</div>
<div class="form-group col-xs-3" style="width: 432px;">
<label for="SendUser" class="col-sm-2 control-label">价格</label>
<div class="col-sm-10">
<div class="nstSlider"
id="priceNstSlider"
data-aria_enabled="true"
data-range_min="1000"
data-range_max="9999999"
data-cur_min="1000"
data-cur_max="9999999">
<div id="priceBar" class="bar"></div>
<div id="priceleftGrip" class="leftGrip"></div>
<div id="pricerightGrip" class="rightGrip"></div>
</div>
<div class="input-prepend input-append pull-left">
<input class="span2 " id="priceleftLabel" style="width: 80px;" onblur="priceleftChange(this)" type="text">
<span class="add-on"><em>RMB</em></span>
</div>
<div class="input-prepend input-append pull-right">
<input class="span2" id="pricerightLabel" style="width: 80px;" onblur="pricerightChange(this)" type="text">
<span class="add-on"><em>RMB</em></span>
</div>
</div>
</div>
</div>
<div class="row">
<div class="form-group col-xs-3" style="width: 432px;">
<label for="ReceiveUser" class="col-sm-2 control-label">切工</label>
<div class="col-sm-10">
<a class="btn btn-app" h="0" style="background-color: white; width: 57px; height: 40px; line-height: 28px;" onclick="cutChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">EX</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 57px; height: 40px; line-height: 28px;" onclick="cutChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">VG</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 57px; height: 40px; line-height: 28px;" onclick="cutChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">G</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 57px; height: 40px; line-height: 28px;" onclick="cutChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">F</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 57px; height: 40px; line-height: 28px;" onclick="cutChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">P</a>
</div>
</div>
<div class="form-group col-xs-3" style="width: 432px;">
<label class="col-sm-2 control-label">颜色</label>
<div class="col-sm-10">
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">D</a>
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">E</a>
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">F</a>
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">G</a>
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">H</a>
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">I</a>
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">J</a>
<a class="btn btn-app" h="0" style="background-color: white;" onclick="colorChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">K</a>
</div>
</div>
</div>
<div class="row">
<div class="form-group" style="width: 100%; margin-left: -105px;">
<label class="col-sm-2 control-label">净度</label>
<div class="col-sm-10">
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">IF</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">VVS1</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">VVS2</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">VS1</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">VS2</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">SI1</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">SI2</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">I1</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">I2</a>
<a class="btn btn-app" h="0" style="background-color: white; width: 61px; height: 40px; line-height: 28px;" onclick="clarityChange(this)" onmouseover="coChange(this)" onmouseout="coChange(this)">I3</a>
</div>
</div>
</div>
</div>
</div>

下面是表格的

<table id="reportTable" class="table table-bordered table-striped" style="font-size: 10px;">
</table>

这一部分是表格的

        $('#reportTable').bootstrapTable({
method: 'post',
url: '/qStock/AjaxPage',
dataType: "json",
striped: true, //使表格带有条纹
pagination: true, //在表格底部显示分页工具栏
pageSize: 22,
pageNumber: 1,
pageList: [10, 20, 50, 100, 200, 500],
idField: "ProductId", //标识哪个字段为id主键
showToggle: false, //名片格式
cardView: false,//设置为True时显示名片(card)布局
showColumns: true, //显示隐藏列
showRefresh: true, //显示刷新按钮
singleSelect: true,//复选框只能选择一条记录
search: false,//是否显示右上角的搜索框
clickToSelect: true,//点击行即可选中单选/复选框
sidePagination: "server",//表格分页的位置
queryParams: queryParams, //参数
queryParamsType: "limit", //参数格式,发送标准的RESTFul类型的参数请求
toolbar: "#toolbar", //设置工具栏的Id或者class
columns: column, //列
silent: true, //刷新事件必须设置
formatLoadingMessage: function () {
return "请稍等,正在加载中...";
},
formatNoMatches: function () { //没有匹配的结果
return '无符合条件的记录';
},
onLoadError: function (data) {
$('#reportTable').bootstrapTable('removeAll');
},
onClickRow: function (row) {
window.location.href = "/qStock/qProInfo/" + row.ProductId;
},
});

这一部分是slider的

       $('#shapeNstSlider').nstSlider({
"left_grip_selector": "#leftGrip",
"right_grip_selector": "#rightGrip",
"value_bar_selector": "#bar",
"value_changed_callback": function (cause, leftValue, rightValue, prevLeft, prevRight) {
var $grip = $(this).find('#leftGrip'),
whichGrip = 'left grip';
if (leftValue === prevLeft) {
$grip = $(this).find('#rightGrip');
whichGrip = 'right grip';
} $(this).parent().find('#leftLabel').val(leftValue / 100);
$(this).parent().find('#rightLabel').val(rightValue / 100);
$("#reportTable").bootstrapTable('refresh');
}
}); $('#priceNstSlider').nstSlider({
"left_grip_selector": "#priceleftGrip",
"right_grip_selector": "#pricerightGrip",
"value_bar_selector": "#priceBar",
"value_changed_callback": function (cause, leftValue, rightValue, prevLeft, prevRight) {
var $grip = $(this).find('#priceleftGrip'),
whichGrip = 'left grip';
if (leftValue === prevLeft) {
$grip = $(this).find('#pricerightGrip');
whichGrip = 'right grip';
} $(this).parent().find('#priceleftLabel').val(leftValue);
$(this).parent().find('#pricerightLabel').val(rightValue);
$("#reportTable").bootstrapTable('refresh');
}
});

这一部分是改变slider的游标之后的

    function leftChange(obj) {
$('#shapeNstSlider').nstSlider("set_position", $(obj).val(), $("#rightLabel").val());
$("#reportTable").bootstrapTable('refresh');
} function rightChange(obj) {
$('#shapeNstSlider').nstSlider("set_position", $("#leftLabel").val(), $(obj).val());
$("#reportTable").bootstrapTable('refresh');
} function priceleftChange(obj) {
$('#priceNstSlider').nstSlider("set_position", $(obj).val(), $("#pricerightLabel").val());
$("#reportTable").bootstrapTable('refresh');
} function pricerightChange(obj) {
$('#priceNstSlider').nstSlider("set_position", $("#priceleftLabel").val(), $(obj).val());
$("#reportTable").bootstrapTable('refresh');
}

这是bootstrap-table带参到后台去的代码

     function queryParams(params) {  //配置参数
var temp = { //这里的键的名字和控制器的变量名必须一直,这边改动,控制器也需要改成一样的
pageSize: params.limit, //页面大小
pageNumber: params.pageNumber, //页码
minSize: $("#leftLabel").val(),
maxSize: $("#rightLabel").val(),
minPrice: $("#priceleftLabel").val(),
maxPrice: $("#pricerightLabel").val(),
Cut: Cut,
Color: Color,
Clarity: Clarity,
sort: params.sort, //排序列名
sortOrder: params.order//排位命令(desc,asc)
};
return temp;
}

其它的部分

      function colorChange(obj) {   //颜色
var p = $(obj).parent().children('a');
if ($(obj).css("background-color") == "rgb(255, 177, 112)") {
$(obj).css("background-color", "white");
$(obj).css("color", "black");
$(obj).attr("h", 1);
} else {
$(obj).css("background-color", "#FFB170");
$(obj).css("color", "white");
$(obj).attr("h", 0);
} var data = [];
for (var i = 0; i < $(p).length; i++) {
var a = $(p)[i];
if ($(a).attr("h") == "1") {
data[i] = $(a).text();
}
}
Color = "";
for (var i = 0; i < data.length; i++) {
if (data[i] != undefined) {
Color += "'" + data[i] + "',";
}
}
Color = Color.substring(0, Color.lastIndexOf(',')); //颜色条件
$("#reportTable").bootstrapTable('refresh');
} function clarityChange(obj) { //净度
var p = $(obj).parent().children('a');
if ($(obj).css("background-color") == "rgb(255, 177, 112)") {
$(obj).css("background-color", "white");
$(obj).css("color", "black");
$(obj).attr("h", 1);
} else {
$(obj).css("background-color", "#FFB170");
$(obj).css("color", "white");
$(obj).attr("h", 0);
} var data = [];
for (var i = 0; i < $(p).length; i++) {
var a = $(p)[i];
if ($(a).attr("h") == "1") {
data[i] = $(a).text();
}
}
Clarity = "";
for (var i = 0; i < data.length; i++) {
if (data[i] != undefined) {
Clarity += "'" + data[i] + "',";
}
}
Clarity = Clarity.substring(0, Clarity.lastIndexOf(',')); //净度条件
$("#reportTable").bootstrapTable('refresh');
} function coChange(obj) { //改变颜色事件
if ($(obj).css("background-color") == "rgb(255, 177, 112)") {
$(obj).css("background-color", "white");
$(obj).css("color", "black");
} else {
$(obj).css("background-color", "#FFB170");
$(obj).css("color", "white");
}
}

动作方法是这样的

        /// <summary>
/// 分页数据
/// </summary>
/// <param name="pageSize">页面大小</param>
/// <param name="pageNumber">页码</param>
/// <param name="CersNo"></param>
/// <param name="StoneID"></param>
/// <param name="sort">排序的列名</param>
/// <param name="sortOrder">排序的命令方式</param>
/// <returns></returns>
/// pageSize,pageNumber请不要更改变量名(sort,sortOrder如需排序,请使用这两个参数,不可更改变量名)
public ActionResult AjaxPage(string minSize, string maxSize, string minPrice, string maxPrice,
string Shape, string Color, string Cut, string Clarity,
int? pageSize, int? pageNumber, string sort, string sortOrder)
{
//自己写里面的,返回的是Json数据
}

---------------------------------------------------------------------------------------------------------

转载请记得说明作者和出处哦-.-
作者:KingDuDu
原文出处:https://www.cnblogs.com/kingdudu/articles/4884872.html

---------------------------------------------------------------------------------------------------------

【第十六篇】这一次要写的是bootstrap-table的更多相关文章

  1. 解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译)

    解剖SQLSERVER 第十六篇 OrcaMDF RawDatabase --MDF文件的瑞士军刀(译) http://improve.dk/orcamdf-rawdatabase-a-swiss-a ...

  2. Egret入门学习日记 --- 第十六篇(书中 6.10~7.3节 内容)

    第十六篇(书中 6.10~7.3节 内容) 昨天搞定了6.9节,今天就从6.10节开始. 其实这个蛮简单的. 这是程序员模式. 这是设计师模式. 至此,6.10节 完毕. 开始 6.11节. 有点没营 ...

  3. Python之路【第十六篇】:Django【基础篇】

    Python之路[第十六篇]:Django[基础篇]   Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...

  4. 跟我学SpringCloud | 第十六篇:微服务利剑之APM平台(二)Pinpoint

    目录 SpringCloud系列教程 | 第十六篇:微服务利剑之APM平台(二)Pinpoint 1. Pinpoint概述 2. Pinpoint主要特性 3. Pinpoint优势 4. Pinp ...

  5. Python自动化 【第十六篇】:JavaScript作用域和Dom收尾

    本节内容: javascript作用域 DOM收尾 JavaScript作用域 JavaScript的作用域一直以来是前端开发中比较难以理解的知识点,对于JavaScript的作用域主要记住几句话,走 ...

  6. Struts2(十六篇)

    (一)Struts2框架概述 (二)Struts2配置文件 (三)Struts2的Action(简单讲解版) (四)Struts2的Action(深入讲解版) (五)Struts2处理结果管理 (六) ...

  7. Python之路(第四十六篇)多种方法实现python线程池(threadpool模块\multiprocessing.dummy模块\concurrent.futures模块)

    一.线程池 很久(python2.6)之前python没有官方的线程池模块,只有第三方的threadpool模块, 之后再python2.6加入了multiprocessing.dummy 作为可以使 ...

  8. [Python笔记]第十六篇:web框架之Tornado

    Tornado是一个基于python的web框架,xxxxx 安装 python -m pip install tornado 第一个Tornado程序 安装完毕我们就可以新建一个app.py文件,放 ...

  9. Python之路(第三十六篇)并发编程:进程、同步异步、阻塞非阻塞

    一.理论基础 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一.操作系统的其他所有内容都是围绕进程的概念展开的. 即使可以利用的cpu只有一个(早期的 ...

随机推荐

  1. JavaMail的简单使用(自测可以发邮件)

    在很多项目中我们都会遇到发送邮件的功能,发送邮件其实还是很实用的,正好今天做项目需要实现,现在来简单的整理一下发送邮件的实现. 建立邮件与服务器之间的会话 Properties props = new ...

  2. RocketMQ中PullConsumer的消息拉取源码分析

    在PullConsumer中,有关消息的拉取RocketMQ提供了很多API,但总的来说分为两种,同步消息拉取和异步消息拉取 同步消息拉取以同步方式拉取消息都是通过DefaultMQPullConsu ...

  3. html5 placeholder属性兼容ie11

    placeholder 属性是html5的属性,用于提供描述输入字段预期值的提示信息(hint). 简单例子: <!DOCTYPE HTML> <html> <body& ...

  4. C++7行代码实现求最大公约数

    最近在做奥赛题时碰到求最大公约数的问题,给出解决方案: int gcd(int a,int b){ int tmp = a%b; ){ return b; } else{ return gcd(b,t ...

  5. 深入解析Mysql中事务的四大隔离级别及其所解决的读现象

    本文详细介绍四种事务隔离级别,并通过举例的方式说明不同的级别能解决什么样的读现象.并且介绍了在关系型数据库中不同的隔离级别的实现原理. 在DBMS中,事务保证了一个操作序列可以全部都执行或者全部都不执 ...

  6. 用友java后端开发面经

    面的是深圳的友金锁 3月28号 早上十点 之前来学校宣讲加笔试(笔试做的很菜) 以为凉了,27号被捞起来了,现在看来面了也有点凉 视频面试 时间:19分钟左右 面试官人不错 1 自我介绍 2 自我介绍 ...

  7. C++ 重载运算符(详)

    C++ 重载运算符 C 重载运算符 一重载函数 1例程 2备注 二重载运算符 11 二元运算符重载 11 一元运算符重载 111 -- 2备注 3 特殊运算符重载 31 号运算符 32 下标运算符 3 ...

  8. go语言实现分布式对象存储系统之单体对象存储

    对象存储 基本概念 主流存储类型分为三种:块存储.文件存储以及对象存储 NAS(文件存储):Network Attached storage,提供了存储功能和文件系统的网络服务器,客户端可以访问NAS ...

  9. 洛谷P3951 小凯的疑惑 - 数学 /扩展欧几里得

    传送门 题意:求出a和b不能通过线性组合(即n*a+m*b)得到的最大值: 思路:摘自洛谷: 不妨设 a<b 假设答案为 x 若 x≡m*a ( mod b )(1≤m≤b−1) (mod3)什 ...

  10. lightoj 1060 - nth Permutation(组合数+贪心)

    题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1060 题解:如果是不重复数的这些操作可以用康托展开的逆来求,如果是有重复数字出 ...