刀片:
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="post" action="{{route('search')}}">
<div class="ui icon input">
<input style="padding-top: 5px;padding-bottom: 5px" name="search" type="text" placeholder="Search...">
<i class="form search link icon"></i>
</div>
</form>
JS:
$('#search').click(function () {
$('#search').hide();
$("#search_field").animate({
width: 'toggle'
});
})
$('.form').click(function () {
$('.submit_form').submit();
})
Laravel:
Route::post('search', 'SearchController@search')->name('search');
所以,如果我按下图标,它会越过邮政路线。 但是,如果我在输入中写了一些东西并按下输入它会越过获取路径。
我该怎么做才能在后期路线上各方面进行?
答案 0 :(得分:0)
也许在您的routes / web.php文件中有一个get路由与该操作相同的URL?这些路线是按照从上到下的顺序执行的,因此您必须将后路线放在获取路线之前。 喜欢这个
Route::post('/search', 'yourcontroller@store');
Route::get('/search', 'yourcontroller@index');
OR 确保在表单标记
中大写POST方法<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="POST" action="{{route('search')}}">
答案 1 :(得分:0)
解决:
我必须在我的表单中实现{{ csrf_field() }}
。
<form id="search_field" style="margin: 0; display: none" class="submit_form item" method="post" action="{{route('search')}}">
{{ csrf_field() }}
<div class="ui icon input">
<input style="padding-top: 5px;padding-bottom: 5px" name="search" type="text" placeholder="Search...">
<i class="form search link icon"></i>
</div>