2016-08-09 3 views
2

Итак, у меня есть форму для добавления подписчиков в информационный бюллетень. Когда вы вводите свой адрес электронной почты и отправляете форму, вы получаете перенаправление обратно с сообщением. Все работает нормально. Однако нижний колонтитул находится внизу страницы, и я перенаправляюсь назад. Есть ли способ перенаправить и перейти к нижнему колонтитулу напрямую? Вот код в моем контроллере:Laravel - перенаправление назад с положением

public function addSubscriber(Request $request) 
{ 
    $this->validate($request, [ 
     'email' => 'required|email' 
    ]); 

    ...code... 

    return redirect()->back()->with(['added' => $message]); 
} 

Как я могу это достичь?

ответ

3

Вместо того чтобы делать back(), вы могли бы попробовать что-то вроде этого:

return redirect(url()->previous().'#subscribe'); 

Здесь url()->previous() будет генерировать URL предыдущей страницы. Таким образом, вам просто нужно добавить #subscribe, который будет прокручивать страницу вниз до привязки. Поэтому никакой JS не требуется.

Конечно, вам нужно добавить HTML якорь:

<a name="subscribe">Subscribe</a> 
0

Есть два способа сделать это:

  1. Сделать URL-адрес, как https://laravel.com/docs/5.1/queries#introduction, и управлять прокруткой веб-страницы с помощью #introduction. Demo
  2. При успешном выполнении сообщения вызывайте функцию js, которая прокручивает вниз вашу веб-страницу до определенного пикселя высоты, чтобы ваш нижний колонтитул был виден.
Смежные вопросы