Есть генератор таблицы. Для суммирования стодбцов по отдельности и ячеек по горизонтали присваиваю инпутам id и name

Подскажите пожалуйста, уже неделю не могу ничего придумать. Нужно присвоить значения так чтоб они совпадали построчно. То есть если в первой строке таблицы у инпутов имена 1 2 3 4 ...., то и в последующих строках 1 2 3 4 ...... При таком варианте назначает только первой строке, если через цикл(z=0;z....) то в следующих строках значения продолжают увеличиваться.

//Создаем таблицу со всеми атрибутами

function addTableRow() {
  var rowCount=+prowCount;//количество строк
  var cellCount=16;
  var inputCount='<input type="text" class="input_table" style="width: 90%; height: 100%;" value="" />';
//  var tbl=document.getElementById('myTable');
//количество строк, опускаем на две строки
  for(var i=0; i<rowCount; i++){
      var row=tbl.insertRow(i+2);
      var cell=row.insertCell();
          cell.innerHTML=i+1;//пишет номера строк в рервом стодбце
    //document.write(i+1);
    for(var j=0; j<cellCount; j++){
            var cell=row.insertCell(-1);//-1 означает что ячейки будут с права от предыдущих двух ячеек
        //document.write(cell);
//вставляем штпуты в я чейки
                cell.innerHTML=inputCount;
//Далее берем инпуты и присваиваем каждому
//свое уникальное имя и айди
         var atr=document.querySelectorAll('input[class="input_table"]');
             document.write(atr.length);
             //document.write(j);
        
          //for(var z=0; z<rowCount; z++){
            var names=i.toString();
            var ids=i.toString()+j.toString();
            atr[j].name=+names;
            atr[j].id=+ids;
                //document.write(z);
         //}
      }
  }

}
//addTableRow();
//Конец таблицы

Ответы (1 шт):

Автор решения: Dovgal Dima

 function addTableRow() {
    const rowCount = 4;
    const cellCount = 4;
    const tbl = document.getElementById('myTable');

    for (let i = 0; i < rowCount; i++) {
        const row = tbl.insertRow(i + 1);
        const cell = row.insertCell();
        cell.innerHTML = i + 1;

        for (let j = 0; j < cellCount; j++) {
            const cell = row.insertCell(-1);
            const input = document.createElement('input');
            input.type = 'text';
            input.className = 'input_table';
            input.style.width = '90%';
            input.style.height = '100%';
            input.value = '';

            const name = `input_${i + 1}_${j + 1}`;
            const id = `input_${i + 1}_${j + 1}`;

            input.name = name;
            input.id = id;
            cell.appendChild(input);
        }
    }
}

addTableRow();
<table id="myTable">
    <tr>
        <th>Номер строки</th>
        <th>Инпуты</th>
    </tr>
</table>

Этот код создает таблицу с 4 строками и 4 инпутами в каждой строке и присваивает им уникальные имена и идентификаторы.

→ Ссылка