У меня есть форма HTML с одним из следующих 3-х выпадающих меню с опцией, динамически сгенерированной с помощью запросов БД. Я хотел бы дать пользователю возможность добавлять/удалять набор из этих трех меню, чтобы они могли устанавливать более одного значения за раз, но я не знаю, как структурировать код JavaScript для кнопок добавления/удаления , HTML код формы теперь выглядит следующим образом:Удаление/добавление блока кода в HTML-форму с помощью JavaScript
<div id="valori">
<div class="form-group row">
<?php
$con = mysqli_connect("localhost", "root", NULL) or die("Connection Failed");
mysqli_select_db($con, "tag-it")or die("Connection Failed");
$query = "SELECT * FROM tipologie";
$result = mysqli_query($con, $query); ?>
<div class="col-lg-4">
<h4>Tipologia Prodotto:</h4>
<select class="form-control" name="tipologia" onchange="listacampi(this.options[this.selectedIndex].value);" required>
<option value="blank"></option>
<?php while ($line = mysqli_fetch_array($result, MYSQL_ASSOC)) { ?>
<option value="<?php echo $line['ID Tipologia'];?>"> <?php echo $line['Nome'];?> </option>
<?php } ?>
</select>
</div>
<div class="col-lg-4">
<h4>Sotto-tipologia:</h4>
<select class="form-control" name="campi" onchange="listavalori(this.options[this.selectedIndex].value);" required>
<option value="blank"></option>
</select>
</div>
<div class="col-lg-4">
<h4>Valore:</h4>
<input id="valoriAuto" name="valori" class="form-control" list="mylist" required>
<datalist id="mylist">
</datalist>
</div>
</div>
</div>
Здесь, внешний DIV только что был добавлен, потому что я думаю, что я мог бы использовать его для логики Javascript, внутренний один с классом подряд является «установить» из трех выпадающих меню и 3 самых внутренних - 3 раскрывающихся меню. Что я думал о добавлении кнопки рядом с каждым набором, чтобы удалить сам набор, и добавить новый набор только с помощью кнопки для создания нового. Я не думаю, что создание набора было бы большой проблемой, потому что это просто вопрос создания элементов с правильными вызовами php и добавления их в «set» div, но я не знаю, как их удалить. Я думал об использовании
document.getElementById("valori").removeChild()
Но тогда я не знал бы, что перейти к RemoveChild, учитывая тот факт, что новые наборы будут порожденной Javascript с ID или именем, которое я не мог предсказать, и что даже путем доступа к массиву childNodes я бы не знал, какой из наборов пользователь хочет удалить.
Итак, мой вопрос: может ли этот подход работать в любом случае? Есть ли способ идентифицировать элемент «set» div в кнопке удаления и передать ссылку объекта на функцию removeChild()?
EDIT: Я искал функции indexOf и splice, но они не распознаются как функции при вызове element.children или element.ChildNodes. Разве они не возвращают массивы?