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

Campo de filtro com regex

Referente ao filtro?

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

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

    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(this.value, "i");

            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");
        }
    }
});

funciona perfeitamente se os dados são estaticos, porem quando é carregado os dados na pagina via mysql por exemplo ele retorna um array vazio.. como solucionar?

4 respostas

Olá, Celso.

Em que momento você está carregando os dados que estão no MySQL? Você está usando AJAX?

nao...

solução!

estou usando laravel, executo a view e nela tenho uma tabela que lista os dados da minha tabela, ai quero implementar um filtro para buscar um determinado dado da minha pagina, porem não estou conseguindo fazer... de forma que funcione perfeitamente...

Olá, Celso.

Não entendi qual foi a solução que você achou. Por favor, você descrever ele pra gente?