ajax post update后自动重定向到另一个路由

时间:2017-06-26 14:41:04

标签: javascript php jquery ajax laravel

我使用ajax制作了crud,但是当我在Ajax中更新时,它不会停留在同一页面上,而是自动重定向到另一条路径。

Route::get('/news', 'NewsController@index')->name('news'); 
Route::post('/news/save/', 'NewsController@saveUpdate')->name('news.saveUpdate');

function ajaxSaveUpdate(){
   $.ajax({
        url: "{{route('news.saveUpdate')}}",
        type: "post",
        data: {
           _token:"{{csrf_token()}}",
           "id":$('#hid-id').val(),
           "title":$('#edit_title').val(),
           "description":$("#edit_description").val(),
           "status":$("#edit_status").val()
        },
        success: function(response){
            table.clear();
            ajaxLoad();
        }
   });
}

这里,在我更改表单中的数据并提交更新后。我明白了:

MethodNotAllowedHttpException in RouteCollection.php line 251:

如果我用f5键/ ctrl + r刷新它会继续显示相同的错误。但是,如果我点击地址栏(在你输入网址的浏览器中的字段)并按“输入”键,它会引导我进入主页/应该去的地方,而不是再次显示“HttpException”,就像我按下“f5” “刷新密钥。

要摆脱这个错误,我将不得不改变路线:

Route::get('/news', 'NewsController@index')->name('news');

Route::post('/news', 'NewsController@index')->name('news');

但是,它不应该进入'/ news'路线,而应该进入:

 Route::post('/news/save', 'NewsController@saveUpdate')->name('news.saveUpdate');

问题:为什么它没有被重定向就自动转到第一条路线而不是第二条路线?我该如何解决错误?

P.S。我没有将页面重定向到控制器或任何其他文件中的第一个路径。任何改进我的代码方式的建议将不胜感激。谢谢!

0 个答案:

没有答案