[Solved]Event triggered at "appendChild" and not when clicking

Hello everyone, I am trying to make an “app” that reminds the user to meditate random intervals.

Right now, I am setting up the buttons that specify if the user is ready to do the task or not.

When the page loads the event that is supposed to be triggered by clicking the yes button is triggered automatically and cannot be triggered by clicking the button at all. Any help would be greatly appreciated!

(To be more specific about the app, there will be a loop that will exit at a random moment and the app will present the user with two options. If the user clicks yes a timer will be triggered, during which the task should be performed. If the user clicks no, the app will revert back to the loop, until it alerts the user once again.)

<!DOCTYPE html>
<html lang="en">
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Random Reminder</title>
    <div id="container">
        <h1>Time to Meditate!</h1>
        <button id="debug" onclick="test()">Debug</button>

<script src="main.js"></script>
  var yesBtn = document.createElement("button");
  var noBtn = document.createElement("button");
  yesBtn.innerHTML = "Yes";
  noBtn.innerHTML = "No";

  yesBtn.addEventListener("click", console.log(1));
  function yesNo(){
    var cont = document.getElementById('container');
    cont.appendChild(yesBtn).setAttribute("id", "yes");
    cont.appendChild(noBtn).setAttribute("id", "no");
//the debug button is for testing purposes, it does nothing right now

mebbe try…

yesBtn.addEventListener("click",dbug );
  function dbug(){console.log(1);}
1 Like

Your suggestion did not seem to work at first but I edited your solutiom a bit and it worked. Thanks a lot for the input! I was really stuck! :smiley: :smiley:

yesBtn.addEventListener('click', function(){console.log(1)});