1
resposta

[Dúvida] Duvida no projeto Aparecida Nutrição

Estou tendo uma dúvida no projeto Aparecida Nutrição. Não estou conseguindo buscar os pacientes pelo nome no input percebi que o problema aparenta ser na tdNome,textContent pois aparece como null gostaria da ajuda de vocês para descobrir esse problema, vou encaminha fotos do código e erro,


var campoFiltro = document.querySelector("#filtrar-tabela");

campoFiltro.addEventListener("input", function(){
    console.log(this.value);
    var pacientes = document.querySelectorAll(".paciente")

 if( this.value.length > 0) {
    for (var i = 0 ; i < pacientes.length; i++){
        var paciente = pacientes[i];
            var tdNome = paciente.querySelector(".info-nome");
            var nome = tdNome.textContent;
            var expressao = new RegExp();
        if (!expressao.test(nome)){
            paciente.classList.add("invisivel");
        }else{
            paciente.classList.remove("invisivel");
        }
    }  

}else{
    for (var i = 0 ; i < pacientes.length; i++) {
        var paciente = pacientes[i];
        paciente.classList.remove("invisivel");
    }
}



});
1 resposta

Oii, Dev! Tudo bem?

Agradeço por aguardar o nosso retorno.

Pelo código que você postou, acredito que o problema esteja na expressão regular que está sendo criada sem nenhum parâmetro. Tente adicionar o parâmetro "i" na criação da expressão, ficando assim:

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

Assim, a expressão regular irá buscar o valor digitado no input, ignorando se é maiúsculo ou minúsculo.

Para que eu possa simular o seu problema e te ajudar de forma mais assertiva, peço que você compartilhe o link do seu projeto no GitHub ou um drive com todos os arquivos utilizados no projeto.

Espero ter ajudado, qualquer dúvida, fico à disposição.

Bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!