Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Ajuda com o "Busca na tabela"

usei os dois métodos ensinados, com regex e sem regex: 1° Problema com regex, se busco por um nome ex:"Pa" -> aparece somente Paulo na tabela, e quando eu deleto os caracteres, o nome "Paulo", continua lá e nomes restantes não voltam. 2° Problema com regex, se eu adiciona um paciente novo pelo form, na hora da busca esse paciente novo, não está recebendo a classe 'invisivel'. 3°Problema, é o mesmo que o segundo, porem sem o método regex, ou seja usando o nome.substr(0, this.value.length).

segue o busca-paciente.js

var campoFiltro = document.querySelector('#buscar-tabela');

campoFiltro.addEventListener('input', function(){

    //metodo com regex
    if(this.value.length > 0) {
        for(var i = 0; i < pacientes.length; i++) {

            var paciente = pacientes[i];

            var nomeTd = paciente.querySelector('.info-nome');
            var nome = nomeTd.textContent;

            var expressao = new RegExp(this.value, 'i');

            if(!(expressao.test(nome))) {

                paciente.classList.add('invisivel');
            }else {

                paciente.classList.remove('invisivel');    
            }

        }
    }else {

        for(var i = 0; i < pacientes.lenth; i++) {

            var paciente = pacientes[i];
            paciente.classList.remove('invisivel');
        }
    }



    //metodo sem regex
    /*
    for(var i = 0; i < pacientes.length; i++){

        var paciente = pacientes[i];
        var nomeTd = paciente.querySelector('.info-nome');
        var nome = nomeTd.textContent;

        var comparavel = nome.substr(0, this.value.length);
        var comparavelMinusculo = comparavel.toLowerCase();
        var valorDigitadoMinusculo = this.value.toLowerCase();

        if(!(valorDigitadoMinusculo == comparavelMinusculo)) {

            paciente.classList.add('invisivel');
        } else {

            paciente.classList.remove('invisivel');
        }
    }
    */
});
2 respostas
solução!

Pessoal, ja achei o problema, faltou um querySelectorAll, Obrigado!

Fala ai Ivan, tudo bem? Parabéns, fico feliz que tenha encontrado o problema, nem deu tempo de ajudar.

Sempre que precisar não deixe de criar suas dúvidas.

Abraços e bons estudos.