Все, что вам нужно, это знать следующий индекс / номер элемента, который вы хотите добавить, чтобы убедиться, что он уникален и соответствует нумерации, которую вы уже установили для уже существующих элементов.
Поскольку вы хотите добавить входные данные группами по 5 (и сгруппированы в новый <div>
), я бы предложил добавить внешний элемент обертки, чтобы мы могли добавить новый <div>
(а внутренний 5 новый *). 1005 * элементов) правильно.
При каждом нажатии кнопки вам нужно будет создать новый контейнер <div>
, а затем использовать простой цикл for
, чтобы итеративно добавлять 5 новых <input>
элементов. В каждой итерации вы увеличиваете уникальный идентификатор:
// Starting number of inputs
let count = 5;
// Wrapper
const wrapper = document.querySelector('#wrapper');
document.querySelector('#btn').addEventListener('click', () => {
const container = document.createElement('div');
for (let i = 0; i < 5; i++) {
// Increment the count to ensure that it is unique
count++;
// Create your new `<input>` element
const input = document.createElement('input');
input.type = 'text';
input.name = count;
input.size = '4';
input.id = `inp${count}`;
container.appendChild(input);
// Optional: add empty whitespace after each child
container.append(document.createTextNode(' '));
}
wrapper.appendChild(container);
});
<div id="wrapper">
<div>
<input type="text" name="1" size="4" id="inp1" value="">
<input type="text" name="2" size="4" id="inp2" value="">
<input type="text" name="3" size="4" id="inp3" value="">
<input type="text" name="4" size="4" id="inp4" value="">
<input type="text" name="5" size="4" id="inp5" value="">
</div>
</div>
<button type="button" id="btn">Add new input group</button>