技术标签: html5 前端 javascript
<!DOCTYPE html>
<html xmln="http//www.thymeleaf.org" xmlns:th="http://www.w3.org/1999/xhtml">
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="../../static/css/findWaterMeterData_css/findPulseSourceRulData.css"/>
<script src="../../static/js/jquery.min.js" ></script>
<title>Title</title>
</head>
<body>
<div class="top_box">
<form action="/pulseSourceRul" method="post">
<div class="inputBox">
<h1>脉冲光源健康数据</h1>
<div class="start">
<p>查询的年份: <input id="year" name="year" type="text"/></p>
</div>
<input type="submit" class="inputButton" value="查询">
<input type="button" class="outputButton" onclick="tableToExcel()" value="导出excel">
</div>
</form>
</div>
<table id="mytable">
<tr>
<td>id</td>
<td>名称</td>
<td>脉冲光源功率</td>
<td>年</td>
<td>月</td>
<td>日</td>
<td>时</td>
<td>分</td>
<td>秒</td>
</tr>
<tr th:each="model:${model}">
<td class="spec" th:text="${model.id}"></td>
<td class="spec" th:text="${model.name}"></td>
<td class="spec" th:text="${model.pulseSourcePower}"></td>
<td class="spec" th:text="${model.Year}"></td>
<td class="spec" th:text="${model.Month}"></td>
<td class="spec" th:text="${model.Day}"></td>
<td class="spec" th:text="${model.Hour}"></td>
<td class="spec" th:text="${model.Minute}"></td>
<td class="spec" th:text="${model.Second}"></td>
</tr>
</table>
<script>
const tableToExcel = () => {
//table转化为Json
var trs = document.getElementById("mytable").getElementsByTagName("tr");//获得tr数组
var titles = trs[0].getElementsByTagName("td"); //获得表头td数组
var json = "";
for(var i = 1; i < trs.length; i++) {
var tds = trs[i].getElementsByTagName("td");
json += "{";
//拼装json
for(var j = 0; j < tds.length; j++)
json += '"'+titles[j].innerHTML +'"'+ ":" + '"' +tds[j].innerHTML + '"' + ",";
json = json.substring(0, json.length - 1) + "},";
}
json = "[" + json.substring(0, json.length - 1) + "]";
console.log(json)
const jsonData=JSON.parse(json)
console.log(jsonData)
// 列标题,逗号隔开,每一个逗号就是隔开一个单元格
let str = 'id,名称,脉冲光源功率,年,月,日,时,分,秒\n';
// 增加\t为了不让表格显示科学计数法或者其他格式
for(let i = 0 ; i < jsonData.length ; i++ ){
for(const key in jsonData[i]){
str+=`${
jsonData[i][key] + '\t'},`;
}
str+='\n';
}
// encodeURIComponent解决中文乱码
const uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str);
// 通过创建a标签实现
const link = document.createElement("a");
link.href = uri;
// 对下载的文件命名
link.download = "脉冲光源健康数据.csv";
link.click();
}
</script>
</body>
</html>
文章浏览阅读168次。代码:#include <iostream>#include <cstring> using namespace std;class Student{public:Student(char* pName="no name",int ssId=0){ strncpy(name,pName,40); name[39]='\0'; id = ssId; cout <&..._class student{public:student(char* pname = "no name"){strcpy(name, p
文章浏览阅读2.3k次。ColorPicker一款仿Photoshop取色器的Android版取色器。github地址:ColorPicker前言上一篇已经简单介绍了ColorPicker的项目结构以及两种颜色空间,接下来我们详细解析一下ColorPicker的核心自定义控件ColorPickerView。ColorPickerView在阅读代码之前,我们先看一下ColorPicker的布局以及一些标注的数值在代码里的变量_android 仿ps吸管效果
文章浏览阅读1.2k次,点赞2次,收藏4次。计算机系统结构复习(一):Introduction概述体系结构发展新趋势定量分析/量化研究方法计算机种类摩尔定律什么是计算机系统结构两个概念计算机系统结构与计算机组成、实现的关系体系结构发展新趋势1.新的模型:Data-level parallelism (DLP):数据级并行Thread-level parallelism (TLP):线程级并行Request-level parallelism (RLP):满足用户需求的并行2.开源架构 RISC-V3.Domain-Specific A_data-level parallelism
文章浏览阅读897次。更新你的无线网卡驱动到最新版本15.68.9032.47,重启。或者运行regedit修改注册表 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\mrvlpcie8897,找到值 “TXAMSDU”把它从1改为0。转载于:https://www.cnblogs.com/misstaste/p/5898571.html..._surface pro 4 无线网卡
文章浏览阅读4.2k次。Chinese_rules.cf的使用方法:下载Chinese_rules.cf,把该规则放在SpamAssassin存放规则的目录(一般在/usr/share/spamassassin或/usr/local/etc/mail/spamassassin)。通过wget下载的命令如下:wget -N -P /usr/share/spamassassin www.service-labs.com/dow_spamassassin 中文规则
文章浏览阅读349次,点赞10次,收藏11次。2.SQL语句可以使用空格/缩进来增强语句的可读性。1.SQL语句可以单行或多行书写,以分号结尾。3.MySQL数据库的SQL语句不区分大小写。
文章浏览阅读3.8k次,点赞4次,收藏4次。(1)我们经常需要创建一些包含等间距数值的向量,例如以下向量。y = [5 6 7 8]y = 5 6 7 8任务:创建一个名为x(2)对于长向量,输入单个数值是不实际的。可用来创建等间距向量的替代便捷方法是使用:运算符并仅指定起始值和最终值。y = 5:8y = 5 6 7 8请注意,当您使用冒号运算符时,不需要方括..._matla间隔相等的向量
文章浏览阅读5.9k次。Git的相关操作,创建、更新、提交等,代码托管在码云上一、环境配置:(1)下载安装Git Bash,具体步骤就不赘述了;(2)双击运行“Git Bash”,配置用户名及邮箱:$ git config --global user.name "xxxxxxx"$ git config --global user.email "[email protected]"_使用git提交代码,git commit -m ' ' 提交、同步代码之后,在码云上备注是乱码。怎
文章浏览阅读1.4k次。一、数据结构与线程构造方法由于已经看到了ThreadPoolExecutor的源码,因此很容易就看到了ThreadPoolExecutor线程池的数据结构。图1描述了这种数据结构。图1 ThreadPoolExecutor 数据结构其实,即使没有上述图形描述ThreadPoolExecutor的数据结构,我们根据线程池的要求也很能够猜测出其数据结构出来。_线程之 1.7 doacquiresharedinterruptibly解析
文章浏览阅读4.8w次,点赞3次,收藏21次。快速获取图片的宽高其实是为了预先做好排版样式布局做准备,通过快速获取图片宽高的方法比onload方法要节省很多时间,甚至一分钟以上都有可能,并且这种方法适用主流浏览器包括IE低版本浏览器。我们一步一步进入这个过程。一、简陋的获取图片方式1234567891011_图片 src和onload 哪个快
文章浏览阅读6.3k次。严重: 在路径为/book的上下文中,Servlet[jsp]的Servlet.service()引发了具有根本原因的异常java.lang.ClassNotFoundException:这种报错,除了其他人的:还有一种可能:名字不一样,哪怕是空格哪怕是一个空格!..._严重: 在路径为/bookmanage的上下文中,servlet[jsp]的servlet.service()引发了具
文章浏览阅读6.2k次。frida-ios-dump源码地址:GitHub - AloneMonkey/frida-ios-dump: pull decrypted ipa from jailbreak devicefrida-ios-dump是基于frida开发的一键砸壳工具,需要配置frida环境手机配置1)越狱状态2)安装openssh3)安装fridaMac配置1)安装frida,命令行:sudo pip install frida-tools (没有安装pip的话需要先安装pip)_ios砸壳需要 闪退怎么砸