2016-01-20 1 views
0

Я успешно установил ошибки проверки для моего приложения laravel 5.2. Но моя форма находится внизу страницы. Когда запускается ошибка проверки, страница перезагружается с ошибкой, но она попадает в начало страницы. Есть ли способ обновить страницу и остаться в точке прокрутки, которую у этого пользователя есть? Или в точке, где форма (/ # calltoaction). Спасибо!Laravel 5.2 - Ошибки проверки (как мне вернуть страницу в точную точку прокрутки)

ответ

1

Надеется, что вы можете попробовать <form action={{route('url','#calltoaction')}} method="post">

Так что это сделает вам нравится http://url?#calltoaction

0

Это не проблема Laravel, но HTML вопрос.

<div id="calltoaction"> 
    // Your content here 
</div> 

<form action="/foo#calltoaction" method="post"> 
    // Your form here 

    <input type="submit" value="Send"> 
</form> 

При нажатии на кнопку, есть запрос POST к foo и вы прыгать в DIV с идентификатором calltoaction.

Конечно, вы можете использовать помощника маршрута от Laravel вместо жестко закодированного URL.

1

Вы также можете сделать проверку и перенаправление вручную вместо использования $this->validate():

use Illuminate\Support\Facades\Validator;

...

$v = Validator::make($request->all(), [ 
    'comment' => 'required', 
    'username' => 'required', 
]); 

if ($v->fails()) { 
    return redirect(url()->previous() . "#anchor")->withErrors($v->errors()); 
}