nisbos


表格数据组件

<h4>1.表格数据组件相关代码</h4> <h5>1.1.表格</h5> <p>文件上传除了基础的bootstrap、jq的相关js、css外,需要引入如下的相关文件</p> <ul> <li>css文件引入: <pre><code class="language-java">&lt;link rel="stylesheet" href="/css/plugins/bootstrap-table/bootstrap-table.min.css"&gt; &lt;!--导出--&gt; &lt;link rel="stylesheet" href="https://cdn.staticfile.org/TableExport/5.2.0/css/tableexport.min.css"&gt;</code></pre></li> <li>js文件引入: <pre><code class="language-java">&lt;script src="/js/plugins/bootstrap-table/locale/bootstrap-table-zh-CN.js"&gt;&lt;/script&gt; &lt;script src="https://cdn.staticfile.org/TableExport/5.2.0/js/tableexport.min.js"&gt;&lt;/script&gt; &lt;!--在客户端保存生成的导出文件--&gt; &lt;script src="https://cdn.bootcss.com/FileSaver.js/2014-11-29/FileSaver.min.js"&gt;&lt;/script&gt; &lt;!--以XLSX(Excel 2007+ XML格式)格式导出表(SheetJS)--&gt; &lt;script src="https://cdn.bootcss.com/xlsx/0.14.2/xlsx.core.min.js"&gt;&lt;/script&gt; &lt;!--以PNG格式导出表格--&gt; &lt;!--对于IE支持包括 html2canvas 之前的 es6-promise--&gt; &lt;script src="https://cdn.bootcss.com/es6-promise/4.1.1/es6-promise.auto.min.js"&gt;&lt;/script&gt; &lt;script src="https://cdn.bootcss.com/html2canvas/0.5.0-beta4/html2canvas.min.js"&gt;&lt;/script&gt; &lt;!--将表导出为PDF文件--&gt; &lt;script src="https://unpkg.com/tableexport.jquery.plugin/libs/jsPDF/jspdf.min.js"&gt;&lt;/script&gt; &lt;script src="https://unpkg.com/tableexport.jquery.plugin/libs/jsPDF-AutoTable/jspdf.plugin.autotable.js"&gt;&lt;/script&gt; &lt;!--无论期望的格式如何,最后都包含 tableexport.jquery.plugin(不是tableexport)--&gt; &lt;script src="https://unpkg.com/tableexport.jquery.plugin/tableExport.min.js"&gt;&lt;/script&gt;</code></pre></li> </ul> <p>html代码:</p> <pre><code class="language-java">&lt;div class="row" style="margin:10px 30px;"&gt; &lt;div id="toolbar"&gt; &lt;button type="button" onclick="exportData()" class='btn btn-mini btn-info'&gt;导出&lt;/button&gt; &lt;div class="btn btn-primary" onclick="javascript:alert('添加记录')" data-toggle="modal" data-target="#addModal"&gt;添加记录&lt;/div&gt; &lt;/div&gt; &lt;table id="mytab" class="table table-hover"&gt;&lt;/table&gt; &lt;/div&gt;</code></pre> <p>js代码(渲染表格):</p> <pre><code class="language-java">&lt;script&gt; // 渲染表格 $(function() { // 渲染表格 $('#mytab').bootstrapTable({ url: "/front/provideData/list",//数据源 // dataField: "rows",//服务端返回数据键值 就是说记录放的键值是rows,分页时使用总记录数的键值为total height: tableHeight(),//高度调整 showExport: true, exportDataType:"all", search: true,//是否搜索 editable:true,//是否编辑 pagination: true,//是否分页 pageSize: 3,//单页记录数 pageList: [3, 8, 12, 50],//分页步进值 sidePagination: "client",//服务端分页 contentType: "application/x-www-form-urlencoded",//请求数据内容格式 默认是 application/json 自己根据格式自行服务端处理 dataType: "json",//期待返回数据类型 method: "get",//请求方式 searchAlign: "left",//查询框对齐方式 queryParamsType: "limit",//查询参数组织方式 queryParams: function getParams(params) { //params obj params.other = "otherInfo"; return params; }, responseHandler:function(res){ //动态渲染表格之前获取有后台传递的数据时,用于获取出除去本身渲染所需的数据的额外参数 //详见此函数参数的api console.log("res:",res); return res; }, rowAttributes:true,//行属性 theadClasses: "thead-dark", detailView: true, showFullscreen:true, searchOnEnterKey: false,//回车搜索 showRefresh: true,//刷新按钮 showColumns: true,//列选择按钮 buttonsAlign: "left",//按钮对齐方式 toolbar: "#toolbar",//指定工具栏 toolbarAlign: "right",//工具栏对齐方式 rowStyle:rowStyle, showExport: true,//工具栏上显示导出按钮 exportDataType: $(this).val(),//显示导出范围 exportTypes: ['json', 'xml', 'png', 'csv', 'txt', 'sql', 'doc', 'excel', 'xlsx', 'pdf'],//导出格式 exportOptions: {//导出设置 fileName: 'Tablexxx',//下载文件名称 }, columns: [ { title: "全选", field: "select", checkbox: true, width: 20,//宽度 align: "center",//水平 valign: "middle"//垂直 }, { title: "ID",//标题 field: "goodsId",//键名 // 前端排序,若需要组合排序或者后端排序,需要结合传参后台处理 sortable: true,//是否可排序 order: "desc"//默认排序方式 }, { title: "name", field: "goodsName", // sortable: true, // // titleTooltip: "this is name" }, { title: "price", field: "price", // sortable: true, }, { title: "operation", field: "info", formatter: function (value, row, index) { var s = '&lt;button class = "edit btn-warning btn btn-xs" &gt;编辑&lt;/button&gt;'; var d = '&lt;button class = "remove btn-danger btn btn-xs"&gt;删除&lt;/button&gt;'; var t = '&lt;button class = "ShowAll btn btn-primary btn-xs"&gt;查看详情&lt;/button&gt;'; return s + ' ' + d + ' ' + t; }, events: 'operateEvents' } ], // 点击行触发事件 onClickRow: function(row, $element) { console.log(row); //$element是当前tr的jquery对象 //$element.css("background-color", "green"); },//单击row事件 locale: "zh-CN", //中文支持 detailView: false, //是否显示详情折叠 }); }) &lt;/script&gt;</code></pre> <h5>1.2.行内编辑</h5> <p>文件上传除了基础的bootstrap、jq的相关js、css外,需要引入如下的相关文件</p> <ul> <li>css文件引入: <pre><code class="language-java">&lt;link href="https://cdn.bootcdn.net/ajax/libs/x-editable/1.5.1/bootstrap-editable/css/bootstrap-editable.css" rel="stylesheet"&gt;</code></pre></li> <li>js文件引入: <pre><code class="language-java">&lt;script src="https://cdn.bootcdn.net/ajax/libs/x-editable/1.5.1/bootstrap3-editable/js/bootstrap-editable.min.js"&gt;&lt;/script&gt; &lt;script src="/js/plugins/bootstrap-table/bootstrap-table-editable.js"&gt;&lt;/script&gt;</code></pre></li> </ul> <p>html代码:</p> <pre><code class="language-java">&lt;table id="myEditTab" class="table"&gt;&lt;/table&gt;</code></pre> <p>js代码(渲染表格):</p> <pre><code class="language-java">$(function () { $("#myEditTab").bootstrapTable({ // toolbar: "#toolbar", idField: "Id", pagination: true, showRefresh: false, search: false, clickToSelect: false, queryParams: function (param) { return {}; }, url: "/front/provideData/list",//数据源 columns: [ { checkbox: true, }, { title: "ID",//标题 field: "goodsId",//键名 }, { title: "name", field: "goodsName", editable: { type: 'text', title: '用户名', validate: function (v) { if (!v) return '用户名不能为空'; } } }, { title: "price", field: "price", } ], onEditableSave: function (field, row, oldValue, $el) { console.log(row,"{}{}{}{}"); $.ajax({ type: "post", url: "/front/data/edit", data: row, // dataType: 'JSON', success: function (data, status) { if (status == "success") { alert('提交数据成功'); } }, error: function () { alert('编辑失败'); }, complete: function () { } }); } }); });</code></pre> <h4>2.其他</h4> <p>表格数据参数说明:<a href="http://www.itxst.com/bootstrap-table-methods/tutorial.html">http://www.itxst.com/bootstrap-table-methods/tutorial.html</a></p>

页面列表

ITEM_HTML