@decenter

Как в YII2 реализовать заполнение полей формы на основе результата поиска всплывающего окна?

Доброго времени суток!
Делаю проект на yii2 журнал работы с предприятиями по сопровождению их проектов. Возникла необходимость заполнения одного или нескольких полей на основе результатов поиска и соответственно выбора во всплывающем окне.
Логика следующая.
Предусмотрено в базе 2 таблицы (справочник предприятий, справочник контактных лиц).
Есть некая форма анкеты на основе которой формируется справочник контактных лиц. В данной форме большинство полей формата input/data piket и т.д. Есть поле id_company формата hide по на основе данных из справочника предприятий и пустой блок (div или input с идентификатором name_company).
Как реализовать на yii2 следующий функционал:
При заполнении анкеты предусмотрел кнопку «выбрать предприятия» там свой форма поиска по инн, кпп наименованию предприятия и т.п. при поиски соответственно выходит список потенциальных, в формате ссылки при нажатии на которую всплывающее окно закрывается, а поле id_company и блок с идентификатором name_company с заполняется на основе переданных параметров из всплывающего окна.
5da5e4bf87388427099344.jpeg

5da5e46b7f0d5205021497.jpeg

Как осуществить передачу идентификатора из всплывающего окна в поле hide и блок с идентификатором name_company?
  • Вопрос задан
  • 104 просмотра
Пригласить эксперта
Ответы на вопрос 1
vitaly_74
@vitaly_74
а есть какие нибудь примеры. всплывающее окно стандартным компонентом modal в boostrap. а какиv образом js (jq) передать эти значения?

допустим в виде где отрисовывается модальное окно у вас есть список компаний. У каждой компании есть свой ид например указанный как дата атрибут (или как id='23')
<li data-id = '23'>ооо ромашка</li>
Допустим у тега ul имеется класс list-organizations
<ul class="list-organizations">
<li data-id = '23'>ООО ромашка</li>
</ul>


допустим где то на странице у вас есть поле
<input class='hidden-input'>
тогда обработать можно следующим образом:
$(document).on('click', ".list-organizations li", function(){
var id = $(this).attr('data-id');
$(".hidden-input").val(id);
})

Если будете тестить в живую, через консоль, то в скрытый инпут ничего не добавится (если рассматривать html), однако при отправке формы все корректно работает.
и еще jquery встроен в yii2 поэтому устанавливать дополнительно вам ничего не нужно.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы