Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

199
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!