自定义封装弹出框表格代码

时间: 2023-07-31 21:03:54 浏览: 53
好的,以下是一个基于Bootstrap的自定义封装弹出框表格代码,可以用于展示数据或者进行数据选择等操作: HTML代码: ```html <!-- 弹出框模态框 --> <div class="modal fade" id="tableModal" tabindex="-1" role="dialog" aria-labelledby="tableModalLabel" aria-hidden="true"> <div class="modal-dialog modal-lg" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="tableModalLabel">选择数据</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">&times;</span> </button> </div> <div class="modal-body"> <table id="dataTable" class="table table-striped table-bordered"> <thead> <tr> <th>列1</th> <th>列2</th> <th>列3</th> </tr> </thead> <tbody> <!-- 数据行会通过JS动态生成 --> </tbody> </table> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-dismiss="modal">关闭</button> <button type="button" class="btn btn-primary" id="selectBtn">选择</button> </div> </div> </div> </div> ``` JS代码: ```javascript // 默认选中的数据行索引 var selectedRowIndex = -1; // 打开弹出框表格 function openTableModal(data, selectedIndex) { // 清空表格 $("#dataTable tbody").empty(); // 生成表格数据行 for (var i = 0; i < data.length; i++) { var row = $("<tr></tr>"); for (var j = 0; j < data[i].length; j++) { var cell = $("<td></td>").text(data[i][j]); row.append(cell); } $("#dataTable tbody").append(row); } // 设置默认选中行,并高亮显示 if (selectedIndex >= 0 && selectedIndex < data.length) { selectedRowIndex = selectedIndex; $("#dataTable tbody tr").eq(selectedRowIndex).addClass("table-primary"); } // 显示弹出框 $("#tableModal").modal("show"); } // 选择数据行 function selectTableRow(rowIndex) { // 取消之前选中的行的高亮显示 $("#dataTable tbody tr").eq(selectedRowIndex).removeClass("table-primary"); // 设置当前选中的行,并高亮显示 selectedRowIndex = rowIndex; $("#dataTable tbody tr").eq(selectedRowIndex).addClass("table-primary"); } // 获取选中的数据行 function getSelectedTableRow() { var rowData = []; if (selectedRowIndex >= 0) { var row = $("#dataTable tbody tr").eq(selectedRowIndex); row.find("td").each(function() { rowData.push($(this).text()); }); } return rowData; } // 绑定选择按钮点击事件 $("#selectBtn").click(function() { var rowData = getSelectedTableRow(); if (rowData.length > 0) { // TODO: 处理选中数据行的逻辑 console.log(rowData); } // 关闭弹出框 $("#tableModal").modal("hide"); }); ``` 使用示例: ```javascript // 打开弹出框表格,data为二维数组形式的表格数据,selectedIndex为默认选中的行索引 openTableModal([ ["数据1-1", "数据1-2", "数据1-3"], ["数据2-1", "数据2-2", "数据2-3"], ["数据3-1", "数据3-2", "数据3-3"], ], 1); ``` 注意,以上代码仅供参考,具体实现应根据自己的需求进行调整和优化。

相关推荐

最新推荐

recommend-type

Android实现弹出列表、单选、多选框

主要为大家详细介绍了Android实现弹出列表、单选、多选框,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

C++自定义封装socket操作业务类完整实例

主要介绍了C++自定义封装socket操作业务类,结合完整实例形式分析了Linux环境下C++操作socket的封装业务类,可实现基本的socket连接、参数设置、发送请求等基本功能,需要的朋友可以参考下
recommend-type

java自定义封装StringUtils常用工具类

主要为大家详细介绍了java自定义封装StringUtils常用工具类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

Vue自定义指令封装节流函数的方法示例

节流函数是web前端开发中经常用到的一个开发技巧,在input实时搜索,滚动事件等,为了避免过多消耗性能,我们都会使用节流函数.在《JavaScript高级程序设计》一书中有这样的一个例子: function throttle (method, ...
recommend-type

Python实现UI自动化框架 — 基础操作封装

 封装Selenium基本操作,让所有页面操作一键调用,让UI自动化框架脱离高成本、低效率时代,将用例的重用性贯彻到极致,让烦人的PO概念变得无所谓,让一个测试小白都能编写并实现自动化。 知识储备前提:熟练python...
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

从键盘输入一段英文字符串,其中包含多个字母‘h',请编写程序利用正则表达式,将英文字符串中的’h'全部改为‘H’

好的,我可以帮您解决这个问题。 您可以使用 Python 编写一个程序来实现这个功能。具体步骤如下: 1. 首先导入 re 模块,这个模块是 Python 中用于处理正则表达式的模块。 2. 然后定义一个包含英文字符串的变量,例如: text = "This is a string containing multiple h's." 3. 接下来,使用 re.sub() 方法来进行替换操作。re.sub() 方法的第一个参数是正则表达式,第二个参数是替换的字符或字符串,第三个参数是被替换的字符串。在这个例子里,我们需要将所有的小写字母 h 替换成大写字母 H,所以正则表达式可以写成
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。