Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.11.2022, 23:08
Интересующийся
Отправить личное сообщение для sochi-russia Посмотреть профиль Найти все сообщения от sochi-russia
 
Регистрация: 24.11.2014
Сообщений: 23

Как добавить checkbox используя js, с условием?
Здравствуйте, помогите пожалуйста
Есть код
function  generate() {
document.getElementById("Genone").innerHTML = "";
  const numbers = (new Array(37)).fill(1).map((a, i) => a + i);
  let resultSet = new Map();
   let qnt = parseInt(document.getElementById('quantity').value, 10);
  while (resultSet.size < qnt) {
let nums = shuffle(numbers).slice(0, 6);
let key = (nums.sort() + '');
resultSet.set(key, nums);
  }
  resultSet.forEach(val => {
const main = createTableWithContent(val.join('-'), "inone");
   document.getElementById("Genone").append(main);

   
  })
}

function shuffle(arr) {
  return arr.map(el => {
return {
  item: el,
  sort: Math.random()
}
  }).sort((a, b) => a.sort - b.sort).map(el => el.item);
}



function createTableWithContent(content, className) {
  const tableEl = document.createElement("TABLE");
  tableEl.className = className || "";
  tableEl.append(content);
  return tableEl;

}


<input id="quantity" type="text" placeholder="Кол-во комбинаций" style="background: #ffffff!important;color: #8f2d00!important;font-size: 20px!important;"/>
<input class="annoying-btn" type="button" value="Получить комбинации" onclick="generate()" />
<div id="Genone"></div>

Данный скрипт генерит 5 чисел из 37, создавая множество блоков с классом
inone

Как сделать так чтобы у каждой информации с классом
inone
справа появился чекбокс и если человек нажмет этот чекбокс, данный элемент удалялся, а где чекбокс не нажат эти блоки оставались?
Ответить с цитированием
  #2 (permalink)  
Старый 05.11.2022, 23:45
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,075

sochi-russia,

<!DOCTYPE html>
<html>
<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
    </style>
    <script>
        function generate() {
            document.getElementById("Genone").innerHTML = "";
            let length = 37;
            const numbers = Array.from({length}, (a, i) => ++i);
            let resultSet = new Map();
            let qnt = parseInt(document.getElementById('quantity').value, 10);
            while (resultSet.size < qnt) {
                let nums = shuffle(numbers).slice(0, 6).sort((a, b)=> a - b);
                let key = nums.toString();
                resultSet.set(key, nums);
            }
            resultSet.forEach(val => {
                const main = createTableWithContent(val.join('-'), "inone");
                const checkbox = document.createElement("input");
                checkbox.type = "checkbox";
                checkbox.addEventListener("click", function() {
                main.remove();
                });
                main.append(checkbox);
                document.getElementById("Genone").append(main);
            })
        }
        function shuffle(arr) {
            return arr.sort( _ => Math.random() - .5);
        }
        function createTableWithContent(content, className = "") {
            const tableEl = document.createElement("TABLE");
            tableEl.className = className;
            tableEl.append(content);
            return tableEl;
        }
    </script>
</head>
<body>
    <input id="quantity" type="text" placeholder="Кол-во комбинаций" style="background: #ffffff!important;color: #8f2d00!important;font-size: 20px!important;" />
    <input class="annoying-btn" type="button" value="Получить комбинации" onclick="generate()" />
    <div id="Genone"></div>
</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 05.11.2022, 23:52
Интересующийся
Отправить личное сообщение для sochi-russia Посмотреть профиль Найти все сообщения от sochi-russia
 
Регистрация: 24.11.2014
Сообщений: 23

Сообщение от рони Посмотреть сообщение
sochi-russia,

<!DOCTYPE html>
<html>
<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
    </style>
    <script>
        function generate() {
            document.getElementById("Genone").innerHTML = "";
            let length = 37;
            const numbers = Array.from({length}, (a, i) => ++i);
            let resultSet = new Map();
            let qnt = parseInt(document.getElementById('quantity').value, 10);
            while (resultSet.size < qnt) {
                let nums = shuffle(numbers).slice(0, 6).sort((a, b)=> a - b);
                let key = nums.toString();
                resultSet.set(key, nums);
            }
            resultSet.forEach(val => {
                const main = createTableWithContent(val.join('-'), "inone");
                const checkbox = document.createElement("input");
                checkbox.type = "checkbox";
                checkbox.addEventListener("click", function() {
                main.remove();
                });
                main.append(checkbox);
                document.getElementById("Genone").append(main);
            })
        }
        function shuffle(arr) {
            return arr.sort( _ => Math.random() - .5);
        }
        function createTableWithContent(content, className = "") {
            const tableEl = document.createElement("TABLE");
            tableEl.className = className;
            tableEl.append(content);
            return tableEl;
        }
    </script>
</head>
<body>
    <input id="quantity" type="text" placeholder="Кол-во комбинаций" style="background: #ffffff!important;color: #8f2d00!important;font-size: 20px!important;" />
    <input class="annoying-btn" type="button" value="Получить комбинации" onclick="generate()" />
    <div id="Genone"></div>
</body>
</html>
Спасибо большое, Вы супер профессионал!!!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Стилизованные checkbox, как вытащить значение AlexOk Элементы интерфейса 2 22.02.2017 14:59
Как на чистом js добавить в объект другой объект? An1984tonn Общие вопросы Javascript 2 23.01.2017 21:02
Обратный отсчет на js как добавить 0 при значении от 0 до 9 kovalenko3331 Общие вопросы Javascript 2 08.04.2016 08:59
как включить кнопку используя JS? allexmak Events/DOM/Window 10 13.12.2015 22:12
JS классы - как объединить функции в класс olga153b Events/DOM/Window 3 01.11.2011 14:13