Intereting Posts
Opencart: Ajax json ответ неизвестных персонажей Функциональность импорта Yii Предотвратите прямой доступ к файлу включения php Разрешить пользователю добавлять поля в форму, созданную с помощью Zend Framework PHP ищет строку в массиве с разным порядком слов API Карт Google использует exit_time в distancematrix Тонкая структура промежуточного программного обеспечения JWT PHP vs OO PHP – Какой из них использовать? PHP, передающий параметры при создании нового объекта, call_user_func_array для объектов PHP Рекурсивно отключает ключи массива, если они совпадают ImageMagick отображает искаженный текст вместо изображения Создать динамически несколько подкаталогов в папку с использованием нескольких текстовых полей ввода в For Loop? Как конвертировать HTML-код или данные, содержащие (тег изображения и некоторый текст) в изображение для загрузки imagecopy не работает все время Данные массива AngularJS и php

Добавление полей ввода в форму при выборе выпадающего меню

Как добавить поля в форму динамически

поэтому моя форма выглядит так:

<form action="/reservation-add" method="post"> <select id="dropdownlist"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <input></input> </form> 

Если выбран, например, 3, он должен добавить 3 новых входа (может быть массив, чтобы принимать все значения). Я знаю, что мне нужно использовать javascript, но я не знаю, как это сделать.

Related of "Добавление полей ввода в форму при выборе выпадающего меню"

Используйте этот способ:

 $("#dropdownlist").change(function () { var numInputs = $(this).val(); for (var i = 0; i < numInputs; i++) $("#inputArea").append('<input name="inputs[]" />'); }); 

Иметь другой div , с идентификатором «inputArea»:

 <div id="inputArea"></div> 

отрывок

 $("#dropdownlist").change(function () { var numInputs = $(this).val(); for (var i = 0; i < numInputs; i++) $("#inputArea").append('<input name="inputs[]" />'); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <select id="dropdownlist"> <option>Select...</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <div id="inputArea"></div> 
 $("#dropdownlist").on("change",function(e){ for(i=0; i < $(this).val() ;i++){ $("form").append($("<input type='text'/>")); } }) 
 <form action="/reservation-add" method="post" id="appendform"> <select id="dropdownlist"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <input></input> </form> 

Код Jquery

  $(document).ready(function () { $('#dropdownlist').on('change',function () { var howmuch = $(this).val(); var appendhtml = ''; for (i = 0; i < howmuch; i++) { appendhtml+= "<input name="+i+" value="">"; } $('.appendform').append(appendhtml); }); }); 

попробуй это

 <script> function fireChange(val) { var form = document.forms[0]; if(val) { for (var i = 0; i < val; i++) { var in = document.createElement('input'); form.appendChild(in); } } } </script> <form action="/reservation-add" method="post" onchange="fireChange(this.value)"> <select id="dropdownlist"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <input></input> </form> 

Шаг 1 — Добавьте идентификатор в форму
Шаг 2. Используйте метод jquery onchange, код, показанный ниже.

 <form action="/reservation-add" method="post" id="myForm"> <select id="dropdownlist"> <option value="1"></option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </form> $('#dropdownlist').on("change",function() { for(var i=0;i&lt;this.value;i++) { $("#myForm").append("<input type='text' name='myname[]'/> <br>"); } });