在旧版本中,通过使用?Add作为GET变量来获取页面URL,从而创建了一条新记录:
<div class="dropdown">
<button id="BtnID">File</button>
<div class="dropdown-content">
<a href="./?Add">Add New</a>
<a href="...">More menu items</a>
</div>
</div>
根据Laravel标准,我试图将请求发布到页面,所以我将菜单更改为:
<div class="dropdown">
<button id="BtnID">File</button>
<div class="dropdown-content">
<form id="AddNew">
<!--<a id="Add" href="#">Add New</a>-->
<input type='button' id='Add' value='Add New' /><!--Suggested change - also not working-->
</form>
<a href="...">More menu items</a>
</div>
</div>
jQuery:
$('#Add').on('click',function(e) {
e.preventDefault;
if(confirm('some text'))
$('#AddNew').submit();
return false;
});
$('#AddNew').append(CSRF);
$('#AddNew').attr('action','./');
$('#AddNew').attr('method','post');
有人可以帮我弄清楚为什么此表单拒绝POST请求吗?出现确认消息,然后导航到正确的页面,但是应用程序对此发出了GET请求?我注意到CSRF令牌输入未显示在URL中,就像我期望的GET请求一样。
编辑
根据要求,以下是与此页面相关的路线:// Route::get('/SubDirectory/ThisPage/','ThisController@index'); Usually forwards to first page, but commented out for testing this
Route::get('/SubDirectory/ThisPage/{PageNr}', 'ThisController@edit');
Route::post('/SubDirectory/ThisPage/', 'ThisController@add');
Route::delete('/SubDirectory/ThisPage/{ID}', 'ThisController@destroy');
Route::patch('/SubDirectory/ThisPage/{ID}', 'ThisController@update');
我正在将程序PHP应用程序转换为RESTful Laravel / jQuery应用程序。我进行了一些广泛的研究,但是所有建议都失败了,并在下面列出。在旧版本中...
可以