2014-01-17 108 views
8

稱爲鑑於此塊的ajax調用[email protected]Laravel重定向到從控制器路由時,通過AJAX

$.ajax({ 
    url:  '/dashboard/friends/' + id, 
    type: 'DELETE', 
    data: { src: 'show' }, 
    success: function(response) { 
    } 
}); 

我怎樣才能return Redirect::route('dashboard.friends.index')FriendsController刪除過程完成後?我想這是試圖將回應返回給AJAX,它不知道如何反應。

我可以只是window.location.href = '/dashboard/friends'但我想閃光的成功消息的視圖,我不能用AJAX做。

+0

爲什麼不在成功函數中刷新成功消息,然後在用'window.location.href ='/ dashboard/friends''重定向前等待3秒鐘? – Fractaliste

回答

1

Here is how I solved this issue我自己。對於執行模型的AJAX刪除等功能,它將提示確認模式,執行刪除,刷新消息並重定向到提供的路線。

設置完成後,可以通過將適當的data屬性傳遞給原始刪除按鈕或鏈接來動態完成設置。

-1
if(data.success){ 

    var loc = window.location; 
    window.location = loc.protocol+"//"+loc.hostname+"/admin/dashboard"; 
} 
2

我找到了最簡單的方法。 只需在您的ajax成功中再次使用相同的網址。假設朋友是你的路由名然後

$.ajax({ 
    url:  '/dashboard/friends/' + id, 
    type: 'DELETE', 
    data: { src: 'show' }, 
    success: function(response) { 
     window.location.href = "friends"; 
    } 
}); 

這樣你就可以把重定向或閃存會話消息,如果你想。