创建bootstrap的表格(含日期控件)

前端之路:bootstrap 时间日期日历控件 bootstrap 时间日期日历控件(datetimepicker) 阅读详情

创建bootstrap的表格(含日期控件)

引入准备文件

  • bootstrap/css/bootstrap.min.css
  • bootstrap-datetimepicker/css/bootstrap-datepicker.css
  • jQuery/jquery-1.11.3.min.js
  • bootstrap-datetimepicker/js/bootstrap-datepicker.min.js
  • bootstrap-datetimepicker/locales/bootstrap-datepicker.zh-CN.min.js
  • bootstrap/js/bootstrap.min.js
  • bootstrap/snippet/bootloading.js
  • bootstrap-table/bootstrap-table.min.js
  • bootstrap-table/bootstrap-table-zh-CN.min.js

html代码

<div class="myconsult">
        <form  id="searchForm" class="form-inline clearfix" role="form">
            <div class="form-group item">
                <label for="name">&nbsp;&nbsp;预约对象:</label> 
                <input type="text" class="form-control" id="searchName" placeholder="请输入预约对象">
            </div>
            <div class="form-group">
                <label for="">&nbsp;&nbsp;预约时间:</label> 
                <div class="input-group input-medium date-picker input-daterange" data-date-format="yyyy-mm-dd">
                    <input id="startTime" name="startTime" class="form-control" style="font-size: 13px; width:140px;" type="text" value="" placeholder="开始时间"> 
                    <span class="input-group-addon">到</span> 
                    <input id="endTime" name="endTime" class="form-control" style="font-size: 13px; width:140px;" type="text" value="" placeholder="结束时间"> 
                </div>
            </div>
            <div class="form-group">
                <label for="">&nbsp;&nbsp;状态</label> 
                <select class="form-control" id="searchStatus">
                    <option value="">全部</option>
                    <option value="0">预约成功</option>
                    <option value="1">预约失败</option>
                </select>
            </div>
            <div class="form-group">
                <button id="searchBtn" type="button" class="btn btn-primary">查询</button>
            </div>
            <div class="form-group">
                <button id="resetBtn" type="button" class="btn btn-primary">重置</button>
            </div>
        </form>
        <div class="my_folk">
            <table id="tb" border="0" cellspacing="0" cellpadding="0" class="table flok_table">
                <thead>
                    <tr>
                        <th>序号</th>
                        <th>预约对象</th>
                        <th>预约时间</th>
                        <th>预约地点</th>
                        <th>预约内容</th>
                        <th>状态</th>
                    </tr>
                </thead>
            </table>
        </div>
    </div>

js代码

//加载日期控件
var option = {
language : "zh-CN",
format : 'yyyy-mm-dd',
autoclose : true,// 选中之后自动隐藏日期选择框
clearBtn : true// 清除按钮
}
$('#startTime').datepicker(option);
$('#endTime').datepicker(option);

//加载表格,由于bootstrap的刷新也在这,所以先销毁一下表格在加载表示刷新
$("#tb").bootstrapTable('destroy');
var portalUserInfo=new Object();
if (window.sessionStorage) {
    //从缓存获取用户信息
    portalUserInfo =JSON.parse(window.sessionStorage.getItem('portalUser'));
}
var userid=portalUserInfo.userId;
var inputSearchName=document.getElementById('searchName');
var inputSearchStatus=document.getElementById('searchStatus');
var inputEndTime=document.getElementById('endTime');
var inputStartTime=document.getElementById('startTime');
var name="";
var status="";
var endTime="";
var startTime="";

if(inputSearchName==null||inputSearchName==""||inputSearchName==undefined){
    name="";
}else{
    name=document.getElementById('searchName').value;
}
if(inputSearchStatus==null||inputSearchStatus==""||inputSearchStatus==undefined){
    status="";
}else{
    status=document.getElementById('searchStatus').value;
}
if(inputEndTime==null||inputEndTime==""||inputEndTime==undefined){
    endTime="";
}else{
    endTime=document.getElementById('endTime').value;
}
if(inputStartTime==null||inputStartTime==""||inputStartTime==undefined){
    startTime="";
}else{
    startTime=document.getElementById('startTime').value;
}
//正式加载表格
$("#tb").bootstrapTable({
toggle: "tb",
url:  "../../jhtx/getRemindOrders.do",
pagination: "true",
pageSize: 10,
pageList: [10,20],
showHeader :true,
striped :true,//是否显示行间隔色
cache: false,  //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
sidePagination: "server",//表示后台分页(分页方式:client客户端分页,server服务端分页(*))
        paginationPreText: "上一页",
        paginationNextText: "下一页",
        queryParamsType : "limit",
        //参数
        queryParams: function (params) {
            return {
            limit:params.limit,
            offset:params.offset,
            startTime:startTime,
            endTime:endTime,
            userid:userid,
            name:name,
            status:status
            };
        },
columns: [{
field: 'Number',
title: '序号',
width: '30',
align: 'center',
formatter: function (value, row, index) {
return index+1;
}
},{
field: 'name',
title: '预约对象',
width: '50',
align: 'center'
},{
field: 'serviceTime',
title: '预约时间',
width: '60',
align: 'center'
},{
field: 'orgName',
title: '预约地点',
width: '60',
align: 'center'
},{
field: 'serviceTypeName',
title: '预约内容',
width: '60',
align: 'center'
},{
field: 'orderStatus',
title: '状态',
width: '30',
align: 'center',
formatter:function(value, row, index){
var status = "未知状态";
if (value == "0") {
status="预约成功";
}else if(value=="1"){
status="预约失败";
}else{
status="未知状态";
}
return status;  
}
}]
}); 

contorller代码

这里的重点就在它获取的参数limit,offset是已经计算好的,而不是想esayUI只获取到第几页(page),页的数据量(pageSize);
返回的数据倒是跟esayUI相同 :total–符合条件的总数据量,rows:本次查到的数据;

@RequestMapping ("/getRemindOrders")
@ResponseBody
public String getRemindOrders (HttpServletResponse response, HttpServletRequest request{
        // 参数容器
        Map <String, Object> paraMap = new HashMap <String, Object> ();
        // 返回数据的容器
        Map <String, Object> resultMap = new HashMap <String, Object> ();
        UserFamily userFamily = new UserFamily ();
        RemindOrder remindOrder = new RemindOrder ();
        Long userid = 0L;
        // 获得用户id
        String useridStr = request.getParameter ("userid");
        if (!StringUtils.isBlank (useridStr))
        {
            userid = Long.parseLong (useridStr);
        }
        // 模拟数据,在获取分页参数失败的情况下代替
        int limit = 10;
        int offset = 0;
        try
        {
            if (!StringUtils.isBlank (request.getParameter ("offset")))
            {
                // 开始
                offset = Integer.parseInt (request.getParameter ("offset")) + 1;
            }
            if (!StringUtils.isBlank (request.getParameter ("limit")))
            {
                // 结束
                limit = offset + Integer.parseInt (request.getParameter ("limit")) - 1;
            }
            String name = request.getParameter ("name");
            String status = request.getParameter ("status");
            // 搜索开始时间
            String start = request.getParameter ("startTime");
            // 搜索结束时间
            String end = request.getParameter ("endTime");
            // 查询我的家人
            if (StringUtils.isNotEmpty (useridStr))
            {
                userFamily.setUserId (userid);
                // 查询认证过的家属相关信息
                userFamily.setIsRealAuth ("1");
            }
            UserDto user = (UserDto) request.getSession ().getAttribute (LoginConstants.LOGIN_USER);
            String identification = user.getPortalUserInfo ().getIdentification ();

            // 获取家人的相关信息
            List <UserFamily> userFamilyList = userFamilyService.queryUserFimalyByPage (userFamily, 0, -1);
            // 添加自己
            userFamily.setIdentification (identification);
            userFamilyList.add (userFamily);
            // 设置查询参数
            remindOrder.setName (name != null ? name : "");
            remindOrder.setOrderStatus (status != null ? status : "");
            remindOrder.setStartTime (start != null ? start : "");
            remindOrder.setEndTime (end != null ? end : "");
            paraMap.put ("startNumber", offset);
            paraMap.put ("endNumber", limit);
            paraMap.put ("allFamily", userFamilyList);
            paraMap.put ("remindOrder", remindOrder);
            List <RemindOrder> list = null;
            int count = 0;
            count = remindOrderService.findRemindCountOfFamily (paraMap);
            if (count != 0)
            {
                list = remindOrderService.findRemindByConditionOfFamilyWithPage (paraMap);
            }
            resultMap.put ("rows", list);
            resultMap.put ("total", count);
        }
        catch (Exception e)
        {
            _logger.error ("查询数据失败!", e);
            resultMap.put ("rows", null);
            resultMap.put ("total", 0);
        }
        JsonConfig config = new JsonConfig ();
        config.registerJsonValueProcessor (Date.class, new JsonDateValueProcessor ("yyyy-MM-dd HH:mm:ss"));
        return JSONObject.fromObject (resultMap, config).toString ();
    }

效果图

这里说一下:如果数据根本不需要第二页时,这里的分页器是不显示的.
这里写图片描述
这里写图片描述

bootstrap日期控件与文档编辑器的使用 JSP页面 <% String basePath = renderRequest.getContextPath(); %> /js/jquery-1.11.1.js"> /bootstrap/bootstrap-datetimepicker.min.css" rel="stylesheet" /> /bootstrap/moment-with-locales.js"> 阅读详情

相关推荐

带时间的日历控件,结合bootstrap实现

js实现的带时间的日历控件。结合bootstrap实现。资源分不可以选0,见谅!大家可以到我的博客看:http://blog.youkuaiyun.com/jenyzhang/article/details/77504917,直接帖着源码。

前端之路:bootstrap 时间日期日历控件(datetimepicker)

文章目录一 bootstrap 时间日期日历控件datetimepicker应用涉及的样式图片样式展示pc手机属性及使用示例可用属性列表示例1:2017-03-30 上午 09:50示例2:2017-03-30示例3:仅选择时间2.3 weekStart 一周从那一天开始2.4 startDate 开始时间2.5 endDate 结束时间2.6 daysOfWeekDisabled 一周禁用的日期2.7 autoclose 是否自动关闭日期选择器2.8 startView 日期时间选择器打开之后首先显示的视

weixin_44566662的博客 1万+

深入瑞芯微SDK:手把手解析Uboot、Kernel到Rootfs的镜像生成与烧录

本文深入解析瑞芯微SDK中从Uboot、Kernel到Rootfs的镜像生成与烧录全流程,揭示编译背后的技术细节。通过详细分析SDK架构、镜像生成流水线、分区表定制、Rootfs构建及烧录科学,帮助开发者从会编译进阶到懂原理,掌握系统级开发的关键技术。

weixin_29193359的博客 275

BootStrap-datepicker日期插件

BootStrap-datepicker日期格式插件

qq_45745319的博客 2万+

NVIDIA DRIVE SDK学习(二)——NvMedia

可以通过使用NvSciBuf API通过NvMedia Tensor属性分配NvSciBuf来创建NvMedia张量。由于NvSciBuf API有助于NvMedia和NVIDIA®CUDA®之间的数据共享,这使得分配的张量可以在NvSciBuf API允许的情况下重复使用。它支持图像聚合操作。NvSciSync组件使得NvMedia组件可以与其他组件保持同步,比如CUDA组件、基于NvSciSync的组件等。立体视差模式:在这种模式下,该模块通过左图像和右图像来产生立体视差,从而进行物体深度测量。

weixin_39592381的博客 3047

vc mfc listctrl使用虚拟列表 虚拟列表用法

note 虚拟列表可有效加载大量数据 需要处理listctrl的 LVN_GETDISPINFO 消息 使用虚拟列表 不能 使用 insert的方法插入数据,而是告诉listctrl 当前要显示多少行 使用SetItemCount函数告诉listctrl当前显示多少行 使用虚拟列表需要自己维护数据源 使用 添加list ctrl 控件 将其Owner Data 属性 设置为 True 添加...

知其所以然 398

Bootstrap【时间日期插件】

Bootstrap【时间日期插件】

MMF博客园 2466

SAP数据导入工具(LSMW) 超级详细教程(批量导入内部订单)

用户提了个需求,让我批量导入内部订单几百个内部订单。我本打算用写段ABAP 代码来调用 BAPI (BAPI_INTERNALORDER_CREATE)就可以了。但想到我很久没有用过LSMW 了,都快要忘记了。于是我采用LSMW的方式,完成了任务。并把过程记录下来,形成教程方便我以后回头查看,分享出来也希望对大家有帮助。

IT小职员 2万+

若依框架下若依日期控件集成到bootstraptable editalbe中

若依日期控件集成在x-editable使用方法前言先看看效果如何不说废话直接上代码合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 前言 开发的项目使用的是ruyi框架,需要bootstraptable的可编辑功能,文本框下拉框之类的还好说,

mkdeluffy的博客 3700

Linux内核4.14版本——drm框架分析(1)——drm简介

drm框架分析

yangguoyu8023的博客 1万+

Python爬虫实战:利用Playwright与异步技术高效抓取链家十万级二手房数据

在开始编写代码之前,我们首先需要为项目选择合适的技术栈。1. 传统方案:Requests + BeautifulSoup优点: 简单、轻量、学习成本低。直接发送HTTP请求获取HTML,然后解析。缺点: 对于大量由JavaScript动态渲染的内容无能为力。现代网站(包括链家)大量使用JS来加载数据和实现交互,简单的HTTP请求无法获取到完整的页面内容。此外,容易被基于IP或请求头特征的反爬机制拦截。2. 进阶方案:Selenium优点。

2201_76125261的博客 891

Bootstrap可编辑表格

1.说明 继续送福利了,居于Bootstrap可编辑表格,编辑框支持下拉和日期,先上图看下效果,如图1: 这是居于bootstrap-table进行扩展的功能,bootstrap-table的使用这边就不多说了,日期控件用的是bootstrap-datetimepicker,下拉控件bootstrap-select 这个是小编自己写的 bootstrap-table API地址:ht

_执着_的博客 4万+

17、深入分析Freebase数据集:特征、挑战与类型系统构建

本文深入分析了Freebase数据集的特征、数据建模的挑战以及类型系统的构建方法。Freebase作为知识图谱的重要资源,以RDF三元组形式提供了丰富的结构化知识。文章重点探讨了反向三元组、中介节点(CVT节点)以及非主题三元组对链接预测任务的影响,并通过实验展示了不同类型处理策略对模型性能的作用。此外,文章详细介绍了如何构建一个显式的类型系统,以提升链接预测的准确性,并展望了未来可能的研究方向。

css33的专栏 290

bootstraptable 日期控件_bootstrap table插件使用说明demo

$(function(){$('#table').bootstrapTable({url:'manager/blog/list.json',method:'get',contentType:'application/json',showColumns: true, //显示隐藏列showRefresh: true, //显示刷新按钮toolbar:'#search_bar',queryParam...

weixin_42124497的博客 669

DeerFlow 系列教程 附录 | 核心文件索引、官方文档索引与推荐阅读顺序

DeerFlow 系列教程 附录本附录汇集了 DeerFlow 项目的核心文件索引、官方文档索引和推荐阅读顺序三份速查资料,方便读者在日常开发和学习中快速定位关键代码与文档。内容按实际项目目录结构整理,所有路径均基于 DeerFlow 2.0 版本验证。

weixin_43674738的博客 328

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

可编辑Bootstrap插件完整演示:让表格管理更灵活高效

可编辑Bootstrap插件完整演示:让表格管理更灵活高效 去发现同类优质开源项目:https://gitcode.com/ 随着互联网技术的发展,前端框架的应用越来越广泛。今天,我将为大家推荐一个功能强大的开源项目——可编辑Bootstrap插件完整演示,帮助开发者轻松实现响应式表格的编辑与优化。 项目介绍 可编辑Bootstrap插件完整演示是一款基于Bootstrap框架开发的插件,它为开发...

gitblog_06711的博客 334

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【Bootstrap】—table控件的传参取值

前言       最近小编接触的项目中,统一采用扁平化的流行风格,前台使用的Bootstrap框架,相对于EasyUI绑定数据的时候有点复杂,在Table控件传值的时候就卡住了,Bootstrap第一次了解,总结一下它的使用套路。 需求描述       查询一段时间间隔内的数据,需要获取页面上两个日期控件上的日期值传递到Controller的方法中做进一步的逻辑处理。 代码详解  1.

全力奔跑,梦在彼岸 9004

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

bootstrap拖动div_JS组件系列——Bootstrap Table 表格行拖拽(二:多行拖拽)

var i_statuindex = 0;var arrdata =[];var m_oTable = null;$(function () {//1.初始化表格m_oTable = newTableInit();m_oTable.Init();//2.初始化按钮事件var oButtonInit = newButtonInit();oButtonInit.Init();//3.日期控件的初始化$...

weixin_39620653的博客 581

bootstraptable 日期控件_给Bootstrap-table插件添加tree功能

一、最终效果图工作中想用如图的方式去展示数据,虽然网上也有其它人写的相关插件,但是几乎都是一次性请求好数据并且不支持分页,不符合项目需求,所以就自己改了个,尽量避免动原插件的既有功能,当点击行前的折叠图标时,会通过ajax从后台调取数据并插入到表格中。二、相关代码1、修改 BootstrapTable.prototype.initHeader 函数/* 2018.01.10 为树域td添加clas...

weixin_39831239的博客 530

bootstrap datetimepicker日期控件的使用

呵呵

miaoao611的博客 517

可编辑Bootstrap插件完整演示

可编辑Bootstrap插件完整演示 去发现同类优质开源项目:https://gitcode.com/ 欢迎使用本仓库提供的可编辑Bootstrap插件完整演示资源。该资源包含了一个压缩文件:可编辑bootstrap插件_demo.rar,内含一个可编辑表格的Bootstrap完整demo。 本demo特色如下: 基于Bootstrap框架,实现响应式表格布局。 表格支持自由编辑,无需弹窗即可直...

gitblog_06783的博客 252

bootstrap-table+x-editable实现行内编辑之日期选择器

在使用 Bootstrap-Table 的过程中,我们经常需要使用到表格中的行内编辑功能,而日期选择器是其中常见的需求之一。然而,自带的 x-editable 日期选择器可能不尽人意,其样式可能与我们的设计风格不符。因此,我们可以通过自定义的方式,利用 laydate 日期控件来实现一个更符合我们需求的日期选择器。在官方文档里,行内编辑不带按钮的时候表单会自动提交,因此需要在bootstrap-editable.js里补充对应的autosbmit逻辑。

weixin_52223183的博客 1198

Bootstrap学习笔记02-常用控件

1.表格 //overflow为设置滚动条, 超过设置的长度将出现滚动条显示内容 //该table配合Jquery进行动态往tbody添加表格内容 $("#tableId tbody") <div class="row" style="position: relative;top: 50px;overflow-y:auto; overflow-x:auto; width:auto; height:500px;"> <table id="cost_stati

doublewe的博客 368
上一篇: 文件上传至服务器(java+[easyUi+common])
下一篇: easyUI下拉框表格扩展(实现搜索功能)[easyUI+java]
java_trainee
博客等级 码龄10年 12粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值