#html #forms #dynamic #extract
#HTML #формы #динамическое #извлечь
Вопрос:
Я хочу создать веб-сайт, который работает следующим образом:
<form>
Do you wanna see more questions?
<select name="first">
<option>No</option>
<option>Yes</option>
<select>
</form>
Если пользователь выбрал опцию «Нет», ничего не происходит.
Если пользователь выбрал опцию «Да», получите несколько новых вопросов.
Конечно, без нажатия какой-либо кнопки.
Ответ №1:
Я думаю, вы, вероятно, ищете что-то вроде radio button
. Вы можете узнать больше о них здесь: переключатели W3Schools в HTML
Я не совсем уверен, что вы подразумеваете под «Без нажатия каких-либо кнопок». Как бы вы получили пользовательский ввод в противном случае?
Комментарии:
1. Да, обычно, когда есть два варианта, например, да / нет, вы должны использовать группу переключателей с одним выбором
2. Я хочу сказать, что если пользователь выбирает «да», ему не нужно нажимать кнопку Отправить, только страница будет генерировать больше скрытых вопросов. Я знаю радио, и это не так.
Ответ №2:
Вы могли бы добавить идентификатор к выбранному типу id = "first"
Затем вы можете выбрать выпадающий список, используя Vanilla JS, и получить его текстовое значение, например:
var dropdownElementFirst = document.getElementById("first");
var selectedItemsText = dropdownElementFirst.options[dropdownElementFirst.selectedIndex].text;
selectedItemsText
будет содержать значение «да» или «нет»
отредактировано:
Наблюдайте, как параметр выбора меняется с событием изменения в js
first.addEventListener("change", function() {
if(first.value == "yes")
{
//do something
}
});
Комментарии:
1. Это не работает на 100%, как хотелось бы. Я проверяю значение po по document.write, когда я меняю значение на «да», переменная, сгенерированная скриптом, не обновляется, но все время показывает «нет»
2. Я отредактировал свой ответ. Если вы хотите посмотреть, изменится ли значение, используйте событие изменения и обрабатывайте логику оттуда.
3. Я в восторге, все работает так, как должно. Большое вам спасибо 🙂
4. Я рад помочь!