Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

203
Visualizações
How to add tasks to-do-list using javascript

We are trying to dynamically add tasks using the below javascript on click event. I ran into this problem with my code. I want to push the created objects into an array and then display in a bootstrap card.

let button = document.getElementById('clickMe');
button.addEventListener('click', addCard({
    'name': 'juice'
  }
))

function addCard(card) {
  const cardBody = `<div class="card" id="newCard">
<h5 class="card-header bg bg-warning">Task Card <span id="time" style = "padding-top:5px;"></span></h5>
<div class="card-body">
  <h5 class="card-title"></h5>
  <p class="card-text"><strong>${card.name}<br>Assigned to<br>Due date<br>Status<br>Description</strong></p>
</div>
<div class="card-footer">
  <a href="#" class="btn btn-primary">Edit</a>
  <a href="#" class="btn btn-secondary">Delete</a>
</div>
</div> `;
  let cardList = document.getElementById('cardList')
  cardList.innerHTML += cardBody;
}
<form>
  <input type="text" id="nameF">
  <span id="msgErr"></span>
  <br>
  <br>
  <input type="text" id="nameL">
  <span id="msgErr"></span>
  <br>
  <br>
  <button type="button" id="clickMe">Validate</button>
  <span id="currentTime"></span>
</form>
<div class="container card-columns" id="cardList">

  <div class="card" id="newCard">
    <h5 class="card-header bg bg-warning">Task Card <span id="time" style="padding-top:5px;"></span></h5>
    <div class="card-body">
      <h5 class="card-title"></h5>
      <p class="card-text"><strong>Name<br>Assigned to<br>Due date<br>Status<br>Description</strong></p>
    </div>
    <div class="card-footer">
      <a href="#" class="btn btn-primary">Edit</a>
      <a href="#" class="btn btn-secondary">Delete</a>
    </div>
  </div>

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

I'd probably tweak your codes a bit become like this, to make it more dynamic and easier. The problem in your snippet is, it failed to call addCard function when you click the <button>.

function addCard() {
  const card = {
    name: document.getElementById('nameF').value + ' ' + document.getElementById('nameL').value
  };
  
  const cardBody = `
  <div class="card" id="newCard">
    <h5 class="card-header bg bg-warning">Task Card <span id="time" style = "padding-top:5px;"></span></h5>
    <div class="card-body">
      <h5 class="card-title"></h5>
      <p class="card-text">
        <strong>
          ${card.name}
          <br>
          Assigned to
          <br>
          Due date
          <br>
          Status
          <br>
          Description
        </strong>
      </p>
    </div>
    <div class="card-footer">
      <a href="#" class="btn btn-primary">Edit</a>
      <a href="#" class="btn btn-secondary">Delete</a>
    </div>
  </div> `;
  
  const cardList = document.getElementById('cardList');
  cardList.innerHTML += cardBody;
}
<form>
  <input type="text" id="nameF">
  <span id="msgErr"></span>
  <br>
  <br>
  <input type="text" id="nameL">
  <span id="msgErr"></span>
  <br>
  <br>
  <button type="button" id="clickMe" onclick="addCard()">Validate</button>
  <span id="currentTime"></span>
</form>
<div class="container card-columns" id="cardList">
  <div class="card" id="newCard">
    <h5 class="card-header bg bg-warning">
      Task Card <span id="time" style="padding-top:5px;"></span>
    </h5>
    <div class="card-body">
      <h5 class="card-title"></h5>
      <p class="card-text">
        <strong>
          Name
          <br>
          Assigned to
          <br>
          Due date
          <br>
          Status
          <br>
          Description
        </strong>
      </p>
    </div>
    <div class="card-footer">
      <a href="#" class="btn btn-primary">Edit</a>
      <a href="#" class="btn btn-secondary">Delete</a>
    </div>
  </div>
</div>

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda