ASP.NET MVC的ActionLink如何衡量OnSuccess?

8
我不太明白ASP.NET的ActionLink是如何工作的。我看到它们有一个OnSuccess和OnFailure的事件处理程序,但是我找不到任何描述成功和失败如何确定的内容。
我正在构建一个ASP.NET MVC应用程序,在其中我有一个Ajax.ActionLink,它允许我使用AJAX“投票”项目,类似于Digg。Actionlink启动我的控制器和方法...一切都运行良好。
在我的控制器中,我有一些逻辑来检查这个用户是否已经投过票。我想使用"OnSuccess"和"OnFailure"来做出不同的反应。如果用户从未投过票(这是OnSuccess场景),我希望它运行我的Javascript函数“PlusOneVote”,如果用户之前已经投过票,我希望运行我的javascript函数“CheaterYouCantVoteTwice”。
有人能解释一下如何测量OnFailure和OnSuccess吗?
有人能解释一下我如何构建这个逻辑...在一个分支中运行一个Javascript函数(在我的情况下,如果用户从未投过票),在另一个分支中运行另一个Javascript函数(如果用户已经投过票)?
1个回答

6
成功的标志是基于ajax响应的HTTP状态码,没有其他的标准。如果你得到400级别的代码(任何400-417),那么就会失败。如果你得到200,那就被认为是成功的。
我认为你需要检查OnSuccess处理程序中数据的内容来确定要做什么,而不是考虑一种类型的失败消息和一种类型的成功消息。从ajax的角度来看,只要返回了有效的响应,它就是成功的。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接