Ao abrir o código no Chrome e no Edge quando acrescento um paciente ele põe uma linha em branco acima dele, já no Firefox ele repete a linha acrescida sem parar, como poderia resolver esse problema?
Ao abrir o código no Chrome e no Edge quando acrescento um paciente ele põe uma linha em branco acima dele, já no Firefox ele repete a linha acrescida sem parar, como poderia resolver esse problema?
Oi Edilson, eu não entendi bem o problema. Você poderia colocar seu código aqui pra gente testar e ver o que pode ser?
var botaoAdiciona = document.querySelector("#adicionar-paciente");
addEventListener("click", function(event){
event.preventDefault();
var form = document.querySelector("#form-adiciona");
var paciente = obtemPacienteDoFormulario(form);
console.log(paciente);
var pacienteTr = montaTr(paciente);
var tabela = document.querySelector("#tabela-pacientes");
tabela.appendChild(pacienteTr);
form.reset();
function obtemPacienteDoFormulario(form) {
var paciente = {
nome: form.nome.value,
peso: form.peso.value,
altura: form.altura.value,
gordura: form.gordura.value,
imc: calculaImc(form.peso.value, form.altura.value)
}
return paciente;
}
function montaTr(paciente) {
var pacienteTr = document.createElement("tr");
pacienteTr.classList.add("paciente");
pacienteTr.appendChild(montaTd(paciente.nome, "info-nome"));
pacienteTr.appendChild(montaTd(paciente.peso, "info-peso"));
pacienteTr.appendChild(montaTd(paciente.altura, "info-altura"));
pacienteTr.appendChild(montaTd(paciente.gordura, "info-gordura"));
pacienteTr.appendChild(montaTd(paciente.imc, "info-imc"));
return pacienteTr;
}
function montaTd(dado, classe) {
var td = document.createElement("td");
td.textContent = dado;
td.classList.add(classe);
return td;
}
})
Esse é o form.js
Oi Edilson, você esqueceu de associar o click ao botão do formulário:
botaoAdiciona.addEventListener("click", function(event){
event.preventDefault();
//resto do código
});
Se não houver essa associação, o navegador vai disparar seu código quando houver qualquer evento de clique na página, mesmo que não seja no botão.
Considerando isso, quando você preenche um campo que clica em outro, sua função já é chamada e faz todo o processo. Se você clicar fora do formulário sem preencher os campos, terá a linha em branco.
As possibilidades são muitas.
Obrigado cara, passou direto essa.
Sem problema Edilson, acontece muito!
Bons estudos!