Прогрессивная загрузка столбцов с использованием AJAX в Symfony 4 - PullRequest
0 голосов
/ 11 декабря 2019

Мне нужно загружать столбцы один за другим, используя AJAX, чтобы были видны промежуточные результаты. Я пытался разделить службу на функции, но запрос все еще один.

Код контроллера:

    public function getAeroexpressAjax()
    {
//        $options['show_search_field'] = true;
//        $options['show_filters'] = true;
//        $model = new SearchMgtRoutesModel();
//        list($form,$data) = $this->handleFormAndGetData(MgtScheduleType::class,$model,$options);
//        $data = !$data ? $model : $data;
//        list($from,$to) = explode('_',$data->getStation());
//        $stops = $this->schedule->getAeroExpressSchedule($data,$from,$to,'suburban');
        return $this->getTableAjax();
    }

    public function getTableAjax()
    {
        $options['show_search_field'] = false;
        $options['show_aeroexpress'] = true;
        $options['show_work_time'] = false;
        $model = new SearchMgtRoutesModel();
        list($form,$data) = $this->handleFormAndGetData(MgtScheduleType::class,$model,$options);
        $data = !$data ? $model : $data;
        list($from,$to) = explode('_',$data->getStation());
        $params['form'] = $form->createView();
        $params['ajaxSpecific'] = $this->getSpecificAjaxData(__METHOD__ . 'Ajax');
        $params['stops'] = $this->schedule->getAeroExpressSchedule($data,$from,$to,'suburban');
        $params['copyright'] = $this->schedule->getCopyright();
        $html = $this->renderView('schedule/aeroRoute.html.twig', $params);
        return new Response($html);
    }

Код AJAX:

function aeroexpress() {
    if($('.aeroSchedule').length) {
        aeroexpressAjax();
    }
}
function aeroexpressAjax() {
    ajax('ScheduleController', 'getTable',null, {
        done: function (data) {
            $('.aeroSchedule').html($(data).find('#schedule-table').parent().html());
        }
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...