Обработка зависимых списков(yii2)

102
30 ноября 2021, 12:30

Суть вопроса такова, я настроил зависимые списки, но если в списке одно значение, то его невозможно выбрать (кликнуть по нему для отправки ajax запроса)

    $film_id = ArrayHelper::map($films, 'id', 'title');
    $params_film_id = [
        'prompt' => 'Film',
        'onchange' => '
                $.post("index.php?r=order/lists_date&id=' . '"+$(this).val(), function(data){
                    $("select#order-date_id").html(data);
                });',
    ];
    $date_id = ArrayHelper::map($dates_id, 'id', 'date_session');
    $params_date_id = [
        'prompt' => 'Date session',
        'onchange' => '
                $.post("index.php?r=order/lists_session&id=' . '"+$(this).val(), function(data){
                    $("select#order-session_id").html(data);
                });',
    ];

    $session_id = ArrayHelper::map($sessions, 'id', 'time');
    $params_session_id = [
        'prompt' => 'Session',
        'onchange' => '
                $.post("index.php?r=order/lists_ticket&id=' . '"+$(this).val(), function(data){
                    $("select#order-ticket_id").html(data);
                });',
    ];

     <?= $form->field($model, 'film')->dropDownList($film_id, $params_film_id) ?>
    <?= $form->field($model, 'date_id')->dropDownList($date_id, $params_date_id) ?>
     <?= $form->field($model, 'session_id')->dropDownList($session_id, $params_session_id) ?>

как можно это обойти?

Answer 1

В контроллере изменил ответ который нам приходит через ajax` /** * @param $id * @return string */ public function actionLists_date($id) {

    $countDates = Date::find()
        ->where(['film_id' => $id])
        ->count();
    $dates = Date::find()
        ->where(['film_id' => $id])
        ->all();
    echo "<option>Select date</option>";
    if ($countDates > 0) {
        foreach ($dates as $date) {
            echo "<option value='" . $date->id . "'>" . $date->date_session . "</option>";
        }
    }
}`
READ ALSO
Как мне вырезать путь файла?

Как мне вырезать путь файла?

строчка в контроллере

135
Убрать категорую в url wordpress 5,без ошибки 404?

Убрать категорую в url wordpress 5,без ошибки 404?

убирал с помошью RewriteRule ^(*?/)category/(

101
Парсинг Instagram без api на php

Парсинг Instagram без api на php

Не могу получить api instagram так как данная функция не доступна для генерации tokenСейчас загружаю всю страницу file_get_contents('https://www

187
Как выйти из if-блока?

Как выйти из if-блока?

При выполнении большого количества проверок, образуется много условий if-elseНапример:

255