Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.08.2022, 23:02   #1
Visvivi
Новичок
Джуниор
 
Регистрация: 02.08.2022
Сообщений: 1
По умолчанию Прошу помочь с TODOLIST на JS

Здесь обрывки кода, но для понимания: создаются блоки div в списке <ul> (он в отдельном html-файле), по клику на кнопку ввода. Также, каждый блок содержит кнопку удаления, т.е можно удалить весь div. Для этого:
1. Узнать номер элемента массива, который хотим удалить
2. Перебрать массив
3. Получившееся вывести старым способом.

Проблема в том, что поиск id будет через метод findIndex, а я не знаю, как задать правильно call-back функцию для него. Т.е как указать, что удалить нужно именно тот элемент, где была кнопка удаления

Код:
let todoList = [];  

function displayMessages(){                
    let displayMessage = '';                                              
 todoList.forEach(function(item, i){
   displayMessage += `
  <li  class = 'partTodo' >
  <div class = 'step' contenteditable= 'true' >
  <input  contenteditable= 'true' type='checkbox' id='item_${i}' >
  <label for='item_${i}'>${item.todo}</label> 
  <br> <div contenteditable= 'false' >
  ${time}
  <button class = 'knopka' onclick='loseIt()'>Удалить</button>
  </div>
  </div>
  </li>
  `;
   todo.innerHTML = displayMessage;                  
   
 });
Изображения
Тип файла: png Screenshot_1.png (27.2 Кб, 0 просмотров)

Последний раз редактировалось BDA; 03.08.2022 в 02:35.
Visvivi вне форума Ответить с цитированием
Старый 02.08.2022, 23:44   #2
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Добавьте в loseit параметр индекс, а при генерации кнопок задавайте статически индекс для вызова loseit через onclick
Код:
function displayMessages() {
  let displayMessage = '';
  todoList.forEach(function(item, i){
  displayMessage += `
  <li class = 'partTodo' >
    <div class = 'step' contenteditable= 'true' >
      <input contenteditable= 'true' type='checkbox' id='item_${i}' >
      <label for='item_${i}'>${item.todo}</label>
      <br><div contenteditable= 'false'>${time}
      <button class = 'knopka' onclick='loseIt({$i})'>Удалить</button>
    </div>
  </div>`;});
  todo.innerHTML = displayMessage;
macomics вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прошу помочь. VBA morsergey Помощь студентам 0 21.05.2018 12:51
Прошу Помочь) Fhntvrf1 HTML и CSS 5 02.12.2013 20:12
прошу помочь qewertyns Помощь студентам 0 21.10.2012 19:12
Алгоритмы. Не прошу решить. Прошу помочь! pascaluser Паскаль, Turbo Pascal, PascalABC.NET 2 12.10.2012 08:45
Прошу помочь) Егоргий Помощь студентам 3 03.06.2012 20:34