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

Problemas com o script após adicionar um Paciente.

Em um dos exercícios anteriores eu escrevi esse código, ele ilumina uma linha da tabela em verde quando passamos o mouse em cima, e volta pra branco quando tiramos:

var trs = document.getElementsByTagName("tr");
percorreArray(trs, function(tr){
        tr.addEventListener("mouseover", function(){
            this.setAttribute("bgcolor", "green");
            })
        tr.addEventListener("mouseleave", function(){
            this.setAttribute("bgcolor", "white");
            })
        })

O problema é que após a execução do código relativo ao botão de adicionar novo paciente, essa função para de funcionar.

Suspeito que possa ter relação com o event.preventDefault(), mas não consigo entender o que está acontecendo.

2 respostas
solução!

Olá Phellipe,

você consegue anexar a página e todo o Javascript? ou postar o código?

Provavelmente o botão de adicionar novo paciente está alterando a tabela (criando uma nova por exemplo) e então a função percorreArray precisa ser chamada novamente para adicionar os eventos 'mouseover' e 'mouseleave' novamente nas linhas (elementos tr).

Olá Roberto,

O que você disse me deu uma idéia do que estava acontecendo, tive a idéia de chamar a função de novo toda vez que um novo elemento era adicionado a tabela e funcionou.

Ainda não entendi 100% o porque do problema, mas ainda estou começando na linguagem então acho que eventualmente vou entender melhor o JS.

Muito obrigado!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software