2010-06-28 53 views
0

我正在關注Stephen Walther的關於通過POST + AJAX安全刪除的教程(在這裏找到:http://stephenwalther.com/blog/archive/2009/01/21/asp.net-mvc-tip-46-ndash-donrsquot-use-delete-links-because.aspx),但我遇到了問題,他沒有在他的文章中提到。ASP MVC AJAX鏈接完成後沒有更新頁面

我稍微修改了他的代碼,這樣我就有了一個包含Movies.ascx局部視圖的Index.aspx文件。部分視圖是強類型的,並且是我的刪除鏈接所在的位置。刪除邏輯是這樣:

public ActionResult Delete(int id) 
    { 
     var movieToDelete = (from m in _entities.MovieSet 
          where m.Id == id 
          select m).FirstOrDefault(); 
     _entities.DeleteObject(movieToDelete); 
     _entities.SaveChanges(); 

     return RedirectToAction("Index"); 
    } 

當點擊刪除鏈接,刪除被調用時,對象被刪除,並返回RedirectToAction。但是,頁面不會更新。如果再次單擊鏈接,則會引發異常(因爲具有該ID的對象已被刪除),並且頁面更新。記住我正在使用partials,我改回

return PartialView(); 

想着它會解決問題,但它沒有效果。該對象仍然被刪除,頁面從未刷新。

我很難過 - 不知道問題出在哪裏,似乎是我的回報有問題,但我不確定。

回答

1

由於您使用ajax進行刪除,爲什麼不嘗試從dom中刪除對象或在成功時返回新數據。看看這些例子:herehere