Galera, preciso desenvolver um filtro na tabela e também contar as linhas de uma tabela importada do excel.
Estou com os seguintes problemas:
- Preciso realizar filtragem de um valor, numa determinada e ao final da pesquisa, além do resultado preciso informar o número de linha exibidas.
- O cabeçalho não esta ficando na linha 'th'
- Preciso eliminar as colunas 1,7 e 8, ou não gerar essas colunas.
- Colocar classe em cada 'td' adiciona, utilizando a coluna como referencia. ex coluna 1 = class 'data', coluna 2 = class 'bina'
let tbody = document.getElementById('tab-body')
function generateTableHead(tbody,data){
;
let row = tbody.insertRow();
for (let key of data) {
let td = document.createElement('td');
let text = document.createTextNode(key);
td.appendChild(text);
row.appendChild(td);
}
}
function generateTableRows(tbody,data){
let newRow = tbody.insertRow(-1);
data.map((row,index)=>{
if(!!row ){
if (row instanceof Date){
if( index == 4){
let date = new Date(row);
date.setHours(date.getHours()+3)
date = date.toLocaleTimeString('pt-BR', { hour:'2-digit',minute:'2-digit',second:'2-digit' })
console.log = date
let newCell = newRow.insertCell()
let newText = document.createTextNode(date);
newCell.appendChild(newText)
return
}else{
let date = new Date(row)
date.setHours(date.getHours()+3)
date = date.toLocaleTimeString('pt-BR', { month:'2-digit', day:'2-digit'})
let newCell = newRow.insertCell()
let newText = document.createTextNode(date);
newCell.appendChild(newText)
return
}
}
}
let newCell = newRow.insertCell();
let newText = document.createTextNode(row);
if ((row=1) && (index = 1)){
}
newCell.appendChild(newText)
})
}
var input = document.getElementById('input')
input.addEventListener('change', function() {
readXlsxFile(input.files[0]).then(function(data) {
var i = 1;
let spanContador =document.getElementById('sp-total')
spanContador = spanContador.textContent = (data.length)-1;
data.map((row,index)=>{
if(i==0){
let table = document.getElementById('tbl-data');
generateTableHead(table,row);
}
if(i>0) {
let table = document.getElementById('tbl-data');
generateTableRows(table,row);
if (index == 1){
document.querySelector('td').classList.add('teste')
}
};
});
});
});