Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

How to check the checkbox without actually clicking it

I am working on a simple todo list, and I tried to link the todo, which is the task, with the checkbox, so when I click the task, the checkbox should be checked also.

But I don’t want to make a label and give it the attribute "for", I want to make it by JavaScript, not by Html.

Is that possible?!!

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

I have tried to do as follows:

//JavaScript
let box = document.createElement("input")
box.setAttribute("type", "checkbox")
box.id = "box"

let label = document.createElement("label")
label.setAttribute("for", "box")

But it didn’t work with the rest of the code, because when i click on any label in the page, it checks only one checkbox.
Thanks For Helping

>Solution :

Yes, it is possible to link a task (text) with a checkbox using JavaScript without using the label element. You can achieve this by adding an event listener to the task that checks the corresponding checkbox when clicked. Here’s a simple example to illustrate this:

<!DOCTYPE html>
<html>
<head>
  <title>Todo List</title>
</head>
<body>
  <div id="todo-list"></div>
  <script>
    // Function to create a new todo item
    function createTodoItem(taskText) {
      // Create a container div for the task and checkbox
      let container = document.createElement("div");
      
      // Create the checkbox
      let checkbox = document.createElement("input");
      checkbox.type = "checkbox";
      checkbox.id = "box-" + taskText;
      
      // Create the task (text)
      let task = document.createElement("span");
      task.textContent = taskText;
      task.style.cursor = "pointer";
      
      // Add event listener to the task
      task.addEventListener("click", function() {
        checkbox.checked = !checkbox.checked;
      });
      
      // Append the checkbox and task to the container
      container.appendChild(checkbox);
      container.appendChild(task);
      
      // Append the container to the todo list
      document.getElementById("todo-list").appendChild(container);
    }

    // Example usage
    createTodoItem("Buy groceries");
    createTodoItem("Walk the dog");
    createTodoItem("Finish homework");
  </script>
</body>
</html>

n this example:

A div element is created to act as a container for each task and its checkbox.
A checkbox input element is created and added to the container.
A span element is created to hold the task text. The span is given a click event listener that toggles the checked state of the corresponding checkbox when clicked.
The container with the checkbox and task is appended to the main todo list container.
When you run this code, clicking on the task text will toggle the corresponding checkbox.

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading