Выбранные размеры конвертируются в таблицу Div

Может ли кто-нибудь помочь мне перепроектировать страницу это или это? Где пользователь выбирает размеры через систему сетки. Затем количество выбранных ящиков преобразуется в div с теми же размерами.

Или кто-нибудь рекомендует и JavaScript, если да, то какой?

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
40
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

у нас есть две проблемы: одна выбирает, а другая создает. Генерация проста:

Уведомление: Это делается быстро и грязно; innerHtml не следует использовать, напишите мне, если вы хотите, чтобы он был более отполированным :) https://jsfiddle.net/ynfb3Lh2/9/

<div id = "selection">
</div>
<div id = "target">
</div>
<pre id = "text">
</pre>

<script>
  // Prepare our targets
  const selectionContainer = document.getElementById("selection");
  const targetContainer = document.getElementById("target");
  const textContainer = document.getElementById("text");

  // rows: How many rows to generate?
  // cols: How many cols to generate?
  // [_insertCallback]: should we insert callback? 
  // [_targetContainer]: where should we place created divs?
  // [_textContainer]: sWhere should we write our HTML as plain text? 
  function generateDiv(rows, columns, _insertCallback, _targetContainer, _textContainer) {
    // Create our wrapping elements
    const table = document.createElement("table");
    const tbody = document.createElement("tbody");

    for (let r = 0; r < rows; ++r) {
      // Each row is created here...
      const tr = document.createElement("tr");

      for (let c = 0; c < columns; ++c) {
        const td = document.createElement("td");
        td.text = "&nbsp;"
        // if callback is defined, and we have a target - allow us to generate new table on each click
        if (_insertCallback && _targetContainer) {
          td.onclick = () => generateDiv(r + 1, c + 1, false, _targetContainer, _textContainer)
        }

        tr.appendChild(td)
      }


      // ... and added here
      tbody.appendChild(tr)
    }

    table.appendChild(tbody)

    if (_targetContainer && !_insertCallback ) {
      _targetContainer.innerHTML = '';
      _targetContainer.appendChild(table);
    }
    if (_textContainer && !_insertCallback ) {
      _textContainer.innerHTML = table.outerHTML
      .replace(/td><//gi, "td>&amp;nbsp;</")
      .replace(/</gi, "&lt;")
      .replace(/>/gi, ">\n");
    }

    return table;
  }

  selectionContainer.appendChild(generateDiv(10, 10, true, targetContainer, textContainer));

</script>

и аналогично создание таблицы с возможностью выбора выполняется с помощью аналогичной функции, которая добавляет информацию о строках и столбцах в каждую ячейку. Затем событие mouseClick в таблице прочитает строки и столбцы и перейдет к коду генерации.

Как мне создать функцию, которая добавляет строку и столбец, и как их выделить? Я новичок в этом, ты!

Dogantr 24.11.2018 23:45

Между прочим, если вы не заметили, существует еще одна ревизия: jsfiddle.net/ynfb3Lh2/9

Jacek Lipiec 25.11.2018 21:41

Другие вопросы по теме