У меня есть ситуация, когда я хочу, чтобы одно поле выбора менялось в зависимости от выбранного параметра в другом поле выбора.
html может пойти:
<select name="gender-select" id="gender-select">
<option value="girls">girls</option>
<option value="boys">boys</option>
</select>
<select name="names" id="names">
<option value="">Marie</option>
<option value="">Rachael</option>
<option value="">Lis</option>
</select>
Таким образом, все имена будут храниться в базе данных SQL. Предположим, что всего хранится 10 имен.
Затем, когда выбрана опция «мальчики», база данных должна найти все имена мальчиков в базе данных и передать их как варианты.
Я знаю, что буду использовать для этого AJAX, и у меня есть такая настройка, которая выполняет успешный запрос. Моя проблема в том, что мне нужно передать массив имен в функцию, которая обрабатывает данные, прежде чем отправлять их обратно в javascript.
Я делаю это в wordpress, и процесс, о котором я думаю, будет выглядеть так (я уверен, что должен быть лучший способ - если нет, как это сделать?):
- php в шаблоне будет создавать массив с помощью пользовательского цикла.
- javascript возьмет этот массив с параметром «мальчики», а при изменении выбора передаст массив и параметр в functions.php
- Затем functions.php сделает свое дело, найдет имена всех мальчиков, а затем отправит их обратно в javascript,
- js отобразит новые параметры
Мне это кажется глупым преобразованием php -> js -> php -> js
просто для асинхронной сортировки массива.
Что мне здесь не хватает?