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

Paciente adicionado não é filtrado corretamente por causa de espaço

Boa noite, queria saber o porque quando eu adiciono um paciente sem querer com um espaço, por exemplo: "Ana " (esse ultimo espaço entre as aspas e a última letra) eu não consigo filtrar ele no meu input. Apenas consigo achar esse nome adicionado quando coloco o espaço que "teoricamente" coloquei sem querer, como resolver esse problema?Insira aqui a descrição dessa imagem para ajudar na acessibilidade segue meu código:

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

    pacientes.forEach(function(paciente){
        var tdNome = paciente.querySelector(".info-nome");
        var nome = tdNome.textContent;

        if( nome.toLowerCase() == campoFiltro.value.toLowerCase() || campoFiltro.value == 0){ 
            paciente.classList.remove("invisivel");
        }else {
            paciente.classList.add("invisivel");
        }
    });
});
2 respostas
solução!

Nesse caso você precisa aplicar um filtro para remover espaços desnecesarios, seja no começo ou no final, o JavaScript possui o metodotrim() para isso. Você pode ler mais sobre nesse post do DevMedia https://www.devmedia.com.br/javascript-trim-removendo-espacos-desnecessarios/39685

Muito obrigado pela resposta, vou dar uma olhada!