<form id="searchForm" action="searchProduct" method="post">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<input type="text" id="wholeProdSearch" name="searchProd" placeholder="Search" class="wholeProdSearch">
<i class="search link icon"></i>
</form>
我有表单…当用户点击进入时,我试图搜索一些东西。这是js
$(document).ready(function() {
$('input.wholeProdSearch').on( 'keypress', function (e) {
if (e.which == 13) {
$('#searchForm').submit();
}
});
});
我有这条路线
Route::post('searchProduct','Retailer'ProductController@searchProduct');
仍然抛出错误的方法异常…使用get方法可以很好地工作,但是当我尝试这个时…它仍然抛出错误
error is
**MethodNotAllowedHttpException in RouteCollection.php line 207:**
in RouteCollection.php line 207
at RouteCollection->methodNotAllowed(array('GET', 'HEAD')) in RouteCollection.php line 194
at RouteCollection->getRouteForMethods(object(Request), array('GET', 'HEAD')) in RouteCollection.php line 142
at RouteCollection->match(object(Request)) in Router.php line 729
at Router->findRoute(object(Request)) in Router.php line 652
at Router->dispatchToRoute(object(Request)) in Router.php line 628
at Router->dispatch(object(Request)) in Kernel.php line 214
at Kernel->Illuminate'Foundation'Http'{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 141
at Pipeline->Illuminate'Pipeline'{closure}(object(Request)) in VerifyCsrfToken.php line 43
at VerifyCsrfToken->handle(object(Request), object(Closure)) in VerifyCsrfToken.php line 17
at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate'Pipeline'{closure}(object(Request)) in ShareErrorsFromSession.php line 55
at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate'Pipeline'{closure}(object(Request)) in StartSession.php line 61
at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate'Pipeline'{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 36
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate'Pipeline'{closure}(object(Request)) in EncryptCookies.php line 40
at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate'Pipeline'{closure}(object(Request)) in CheckForMaintenanceMode.php line 42
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 125
at Pipeline->Illuminate'Pipeline'{closure}(object(Request))
at call_user_func(object(Closure), object(Request)) in Pipeline.php line 101
at Pipeline->then(object(Closure)) in Kernel.php line 115
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 84
at Kernel->handle(object(Request)) in index.php line 53
试着把你的表单动作写成
{{ url('/searchProduct') }}
就可以了
这个问题是由于表单上的action="searchProduct"
属性没有正确解析到路由路径。
route()
或url()
帮助程序:
action="{{ url('/searchProduct') }}"
或者为你的路由指定一个名称:
Route::post('searchProduct','Retailer'ProductController@searchProduct')->name('product.search');
然后使用route
帮助器:
action="{{ route('product.search') }}"