javascript - 在 html 表中显示 javascript 数组
问题描述
我正忙于HTML
通过来自database
. 我让数组正常工作并且我正在正确过滤,然后我使用 for 循环在el
函数中获取对象。控制台日志是正确的,但是我想显示的页面上的表格在一行上写了一个字母。
JAVASCRIPT
function go(){
var startd = document.getElementById('startdate').value+" 00:00";
var stopd = document.getElementById('stopdate').value;
var array = [<%items.forEach(function(item, index){%>{date:"<%= item.Expr1000%>", inout:"<%= item.CHECKTYPE%>", sn:"<%= item.sn%>"},<% });%>{date:"stop"}];
var check = array.filter(function(el){
return el.date >= startd &&
el.date <= stopd &&
el.inout &&
el.sn;
});
check.forEach(function(el){
console.log(el.date);
var table = $('#set');
var row, cell;
for(var i=0; i<el.date.length; i++){
row = $( '<tr />' );
table.append( row );
for(var j=0; j<el.date[i].length; j++){
cell = $('<td>'+el.date[i][j]+'</td>');
row.append( cell );
}
}
});
}
当前显示日期如下:
2
0
1
9
-
0
8
-
1
5
0
7
:
0
0
:
2
1
2
0
1
9
-
0
8
-
1
5
0
7
:
0
0
:
3
0
我想显示为:
yyyy-mm-dd hh:mm:ss
yyyy-mm-dd hh:mm:ss
解决方案
你的第二个循环是问题:
for(var j=0; j<el.date[i].length; j++){
cell = $('<td>'+el.date[i][j]+'</td>');
row.append( cell );
}
这是循环日期中的每个字符。您根本不需要第二个循环——只需将日期直接添加到row
:
cell = $('<td>'+el.date[i]+'</td>');
row.append( cell );
推荐阅读
- red - 列的红色 vid 布局
- python - 使用 dict 理解初始化类字典 - 范围
- google-chrome - Angular 6:DevTools 无法解析 SourceMap:https://example.com/ngsw_worker.es6.js.map
- reporting-services - VS2017 中的 SSRS - 查询在查询设计器中运行,但不显示在报表中
- unit-testing - Angular 单元测试 - 如何模拟 router.url
- python - Python ftplib msld 错误:500 命令不理解
- vue.js - 初始化 VueX 存储不起作用
- javascript - 名称值对的多维数组随机显示问题(javascript/jquery)
- azure-devops - VSTS 拉取请求不会触发构建
- c - 这个程序到底是什么意思?(Shellcoder 手册)