gpt4 book ai didi

javascript - 向数据表添加额外的列

转载 作者:行者123 更新时间:2023-11-28 05:32:38 25 4
gpt4 key购买 nike

我需要将列(标题)添加到数据表中。在示例中,我对时间段进行了过滤,如果我选择从 2016 年 1 月到 2016 年 5 月的时间段,那么我需要添加列 <th>像这样

Buyer|January 2016 | February 2016 | April 2016 | May 2016 | 

但是当我选择2016年1月至2016年6月期间

Buyer|January 2016 | February 2016 | April 2016 | May 2016 | June 2016

有什么想法吗???我正在使用数据表。

最佳答案

您可以使用类似的函数,例如drawDataTable,将月份包装在数组中,清除标题行,最后添加标题。

(function() {
var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
var sel1 = document.querySelector('#sel1');
var sel2 = document.querySelector('#sel2');
var year = 2016;
var table = document.querySelector('table');

function fillMonths(month, select) {
var element = document.createElement('option');
element.textContent = month;
select.appendChild(element);
}

months.forEach(function(month) {
fillMonths(month, sel1);
});
months.forEach(function(month) {
fillMonths(month, sel2);
});

function drawDataTable(selected) {
var rest = months.slice(months.indexOf(selected[0]), months.indexOf(selected[1]) + 1);
var nodes = table.rows[0];

while (nodes.children.length > 1) {
var cell = nodes.children[1];
nodes.removeChild(cell);
}

rest.forEach(function(month) {
var header = document.createElement('th');
header.textContent = month + ' ' + year;
table.rows[0].appendChild(header);
});
}

var monthSelected = ['January', 'January'];
drawDataTable(monthSelected);

sel1.addEventListener('change', function(event) {
monthSelected[0] = event.target.value;
drawDataTable(monthSelected);
});

sel2.addEventListener('change', function(event) {
monthSelected[1] = event.target.value;
drawDataTable(monthSelected);
});
})();
body {
font-family: "Open Sans", sans-serif;
}
table {
border-collapse: collapse;
}
th {
border: 2px solid black;
}
<!DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Made with Thimble</title>
<link rel="stylesheet" href="style.css">
</head>

<body>

<h1>Choose date</h1>
Month
<select id="sel1"></select>
to
<select id="sel2"></select>
<table>
<tr>
<th>Buyer</th>
</tr>
</table>
<script src="script.js"></script>
</body>

</html>

关于javascript - 向数据表添加额外的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39569525/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com