2014-04-06 38 views
0

我有一個MVC 5/C#應用程序。我在表單上有一個按鈕,允許用戶從數據庫中刪除記錄。點擊按鈕時會調用下面的JS函數。它允許用戶刪除當前行的HTML是:Java腳本/ jQuery - 如何重定向到另一頁

<a class="btn btn-default" href="javascript:DeleteLocation(@Model.RowId);">Delete</a> 

的JS功能如下所示:

function DeleteLocation(rowId) { 
      var url = "/UserLocation/Delete"; 
      var redirectUrl = "/UserLocation/Index" 

      $.get(url, { rowId: rowId }, function() { 
       $.get(redirectUrl); 
       }); 
     } 

我的C#刪除方法如下所示:

[Authorize] 
public void Delete(int rowId) 
{ 
    UserLocationData userLocationData = new UserLocationData(); 
    userLocationData.Delete(rowId); 
} 

半這是完美的工作。當用戶單擊按鈕時,我的C#方法會被調用。但是,刪除後,我想重定向到的頁面不會顯示。我試着在C#方法中放置一個RedirectToAction,但那也不起作用。我沒有大量的JS或jQuery經驗,所以很可能我的JS錯了。或者可以有更好的方法來做到這一點。

+0

使用'window.location' –

+0

你不是跟你的'$ .get' –

回答

5

window.location應該用來發送用戶到另一個頁面。

window.location.replace("http://yourwebsite.com"); 

More details here

+0

替換結果做任何刪除當前從瀏覽器歷史記錄中刪除頁面,並阻止使用後退按鈕返回。如果您想阻止雙重發布,這很有用。考慮到你正在從數據庫中刪除某些東西,替換看起來就像是最好的方法。 –

+0

謝謝。完美的作品。 –

1

使用window.location的

window.location = redirectUrl;