Я не знаю, правильно ли понимает мой заголовок, но я хочу показать список в опции элемента select в зависимости от выбора другого элемента select. Я использую это со страницей jsp и с переменной Map, чтобы иметь списки различий.
Страница JSP выглядит следующим образом:
<form:select id="typeIndice1" path="typeIndice" itemLabel="libelle" onchange="run()">
<form:options items="${listeIndices}" />
</form:select>
<form:select id="indices" path="indice" itemValue="valeur" itemLabel="libelle" >
</form:select>
Атрибутом модели является «listeIndices», который представляет собой карту с ключом, данные для отображения на втором элементе выбора и значение - формулировка данных. Обычно я знаю, что должен сделать обратное для ключа, значения, но для того, чтобы легко отобразить формулировку при первом выборе.
У меня есть этот скрипт ниже:
<script>
function run(){
var select = document.getElementById("typeIndice1");
var input = document.getElementById("indices");
var option = document.createElement("option");
option.text = select.value;
input.options.add(option);
}
Когда опция выбрана при первом выборе, функция запуска создает новую опцию для второго выбора со значением первого выбора, у меня полный список только в одной опции, но мне бы хотелось, чтобы каждая строка в одной вариант, но я не знаю, как это сделать.
я тоже пробовал:
option.items = select.value;
вместо
option.text = select.value;
Но у меня есть пустая опция.