2014-04-06 27 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;