Невозможно получить массив всех кнопок из формы - PullRequest
0 голосов
/ 27 июня 2019

У меня есть несколько кнопок в форме HTML-службы Google Apps Script в Google Sheets (я использую Materialise framework). Один был написан, а остальные были клонированы из него.

Нужно получить массив всех этих кнопок , но мне не удалось. Он должен был показать 3 элемента в массиве, но он показывает 1.

Это оригинальная кнопка, которую я клонировал:

<!--Import Google Icon Font-->
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">

<!-- Compiled and minified CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">

<div class="input-field col s2.5">

 <!--this is the BUTTON -->
  <a class="buttonClass waves-effect waves-light btn-small #039be5 light-blue darken-1" style="float: right;" id="btnrow"><i class="material-icons right">send</i>Ввести</a>
</div>

Я пытаюсь получить кнопки по классам (поскольку идентификаторы разные):

var buttons = document.getElementsByClassName('buttonClass').length;

Я делаю это, чтобы получить идентификатор или позицию кнопки, на которую нажали .

Пожалуйста, дайте мне знать, если вы хотите, чтобы я предоставил больше кода. Спасибо.

Вот как я клонировал элементы:

//loop stat names (data from backend)
for (var i = 0; i < stats.statStats.length; i++) {

  var statName = stats.statStats[i]
  var statNumber = stats.statNumbers[i]

  //cloning the original row with all elements
  var clonedRow = statRow.cloneNode(true)

  //setting unique ID to whole row
  var rowId = clonedRow.id = "statsample" + i

  //setting unique ID to stat div
  var clonedStatID = motherDiv.getElementsByClassName("statClass")[0].id = "statName" + statNumber
  //assing stat names
  var statHtml = document.getElementById(clonedStatID).innerHTML = statNumber + ". " + statName;

  motherDiv.insertBefore(clonedRow, motherDiv.children[0]);

}
...