2009-07-26 86 views
7

我不完全理解ASP.NET ActionLinks如何工作。我發現他們有一個針對OnSuccess和OnFailure的事件處理程序,但我找不到任何描述成功和失敗如何確定的事情。如何測量ASP.NET MVC ActionLink的OnSuccess?

我建立一個ASP.NET MVC應用程序並在其中我有一個Ajax.ActionLink,允許使用AJAX ...類同Digg的項目我「投票」。動作鏈接啓動我的控制器和方法...一切工作正常。

在我的控制器我有檢查,看看如果該用戶已經過投票邏輯。我想用「OnSuccess」和「OnFailure」做出不同的迴應。我希望它運行我的JavaScript函數「PlusOneVote」如果用戶從未投票(這是的onSuccess情況下),如果用戶已經投票之前,我想我的運行javascript函數「CheaterYouCantVoteTwice」。

有人能解釋onFailure處和的onSuccess如何衡量?

有人可以解釋我是如何構建這個邏輯的......我可以在一個分支中運行一個Javascript函數(在我的情況下,如果用戶從未投過票)以及另一個Javascript函數投票?

回答

5

成功是基於Ajax響應的HTTP狀態代碼,僅此而已測量。基本上如果你得到一個400級的代碼(400 - 417中的任何一個),你將會失敗。如果你得到200,這被認爲是成功的。

我認爲你需要檢查數據的內容,在你的onSuccess處理決定做什麼,而不是考慮一個類型的失敗消息和一個類型一個成功的消息。從ajax的角度來看,如果返回有效的響應,它就成功了。