html php Два экшена (action) в одной форме (form). Как по-разному обрабатывать данные из одной формы?
Primary tabs
Задача
Имеется форма с полями-фильтрами для поиска массива данных.
Требуется в зависимости от нажатия на кнопку [Применить] или [Скачать] выводить полученые данные на экран или отдавать сформированый excel.
В обоих случаях поиск производится с учётом полей формы. То есть форма одна, а кнопки - две.
Решение
Решается приятно просто) Можно вместо атрибута action для формы указывать роут, по которому пойдут данные, в атрибуте formaction тега button:
<form method="GET"> <input id="datepicker" name="date_from" value="{% if dateFrom is not null %}{{ dateFrom|date('Y-m-d') }}{% endif %}"> <input id="datepicker1" name="date_to" value="{% if dateTo is not null %}{{ dateTo|date('Y-m-d') }}{% endif %}"> <button formaction="{{ path('manager_detalization_sales')}}" class="db alCenter blue_button cp fleft">Применить</button> <button formaction="{{ path('manager_download_detalization_sales')}}" class="db alCenter blue_button cp fleft">Скачать реестром</button> </form>
Источники
- Log in to post comments
- 3092 reads