Заполнение выделений соответствующими данными

У меня проблемы с попыткой что-то выяснить. Я передаю мой взгляд массив данных, который принимает следующую форму

array:4 [▼
  "data" => array:2 [▼
    2015 => array:2 [▼
      "english" => array:1 [▼
        "chips" => array:1 [▼
          0 => "img1.png"
        ]
      ]
      "french" => array:1 [▼
        "mussles" => array:1 [▼
          0 => "img1.png"
        ]
      ]
    ]
    2016 => array:2 [▼
      "indian" => array:1 [▼
        "madras" => array:1 [▼
          0 => "img1.png"
        ]
      ]
      "italien" => array:1 [▼
        "pasta" => array:1 [▼
          0 => "img1.png"
        ]
      ]
    ]
  ]
]

Эта структура получается при сканировании структуры каталогов, но она должна быть довольно последовательной. Общая структура

Year>Country>Dish>Images

Мне нужно как-то отобразить эти данные в опциях выбора. Так что год довольно прост, я могу сделать это

<select id="yearSelection" class="selectpicker form-control">
    @foreach($fileData["data"] as $year => $country)
        <option value="{{ $year }}">{{ $year }}</option>
    @endforeach
</select>

Здесь моя проблема. Таким образом, вышеупомянутый выбор будет отображать 2015 и 2016. Затем у меня есть второй выбор ввода

<select id="countrySelection" class="selectpicker form-control">
    <option value=""></option>
</select>

Теперь в зависимости от того, какой год они выбирают, будет определяться, что этот выбор должен отображать. Так что, если они выбирают 2015, этот выбор должен отображать английский и французский.

Как я могу заполнить мои варианты выбора на основе предыдущих выборов?

Спасибо

1 ответ

Вам нужно будет использовать AJAX, чтобы сделать это гладко.

Или вы можете обновить, когда выбранная вами опция изменится, и отправить выбранный год (и другие данные), используя параметры GET. Затем вы можете просто передать свои данные в представление в зависимости от ваших параметров GET.

Это должно указать вам направление, в котором вы хотите идти.

Другие вопросы по тегам