Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Uncaught TypeError: Cannot read property 'appendChild' of null

Não estou conseguindo identificar o erro. Uncaught TypeError: Cannot read property 'appendChild' of null

Meus pacientes

NomePeso(kg)Altura(m)Gordura Corporal(%)IMC
Paulo102000.00100
                <tr class="paciente">
                    <td class="info-nome">João</td>
                    <td class="info-peso">800</td>
                    <td class="info-altura">1.72</td>
                    <td class="info-gordura">40</td>
                    <td class="info-imc">0</td>
                </tr>

                <tr class="paciente">
                    <td class="info-nome">Erica</td>
                    <td class="info-peso">54</td>
                    <td class="info-altura">1.64</td>
                    <td class="info-gordura">14</td>
                    <td class="info-imc">0</td>
                </tr>

                <tr class="paciente">
                    <td class="info-nome">Douglas</td>
                    <td class="info-peso">85</td>
                    <td class="info-altura">1.73</td>
                    <td class="info-gordura">24</td>
                    <td class="info-imc">0</td>
                </tr>
                <tr class="paciente">
                    <td class="info-nome">Tatiana</td>
                    <td class="info-peso">46</td>
                    <td class="info-altura">1.55</td>
                    <td class="info-gordura">19</td>
                    <td class="info-imc">0</td>
                </tr>
            </tbody>
        </table>

    </section>
    <section class="container">
        <h2 id="titulo-form">Adicionar novo paciente</h2>
        <form id="form-adiciona">
            <div class="grupo">
                <label for="nome">Nome:</label>
                <input id="nome" name="nome" type="text" placeholder="digite o nome do seu paciente" class="campo">
            </div>
            <div class="grupo">
                <label for="peso">Peso:</label>
                <input id="peso" name="peso" type="text" placeholder="digite o peso do seu paciente" class="campo campo-medio">
            </div>
            <div class="grupo">
                <label for="altura">Altura:</label>
                <input id="altura" name="altura" type="text" placeholder="digite a altura do seu paciente" class="campo campo-medio">
            </div>
            <div class="grupo">
                <label for="gordura">% de Gordura:</label>
                <input id="gordura" name="gordura" type="text" placeholder="digite a porcentagem de gordura do seu paciente" class="campo campo-medio">
            </div>

            <button id="adicionar-paciente" class="botao bto-principal">Adicionar</button>
        </form>
    </section>
</main>

<script src="js/index.js"></script>

JavaScript

var botaoAdicionar = document.querySelector("#adicionar-paciente");

botaoAdicionar.addEventListener("click", criarPaciente);

function criarPaciente() {

event.preventDefault();

var form = document.querySelector("#form-adiciona");

var altura = form.altura.value;
var peso = form.peso.value;
var nome = form.nome.value;
var gordura = form.gordura.value;

var pacienteTr = document.createElement("tr");

var pesoTd = document.createElement("td");
var gorduraTd = document.createElement("td");
var nomeTd = document.createElement("td");
var alturaTd = document.createElement("td");

nomeTd.textContent = nome;
pesoTd.textContent = peso;
gorduraTd.textContent = gordura;
alturaTd.textContent = altura;

console.log(pacienteTr);

pacienteTr.appendChild(nomeTd);
pacienteTr.appendChild(pesoTd);
pacienteTr.appendChild(gorduraTd);
pacienteTr.appendChild(alturaTd);

var tabela = document.querySelector(".tabela-pacientes");

tabela.appendChild(pacienteTr);
1 resposta
solução!

Resolvido!