Ajax.BeginForm - 挂钩验证事件

时间:2010-11-11 18:53:53

标签: asp.net-mvc asp.net-mvc-2 asp.net-ajax

我正在做的是在点击时禁用提交按钮。 Ajax调用有点长时间运行;返回需要几秒钟。所以我阻止了热心的用户多次提交。当表单由于验证错误而失败时,问题就出现了。如果没有办法挂钩事件,那么就无法判断提交按钮是否需要重新启用。

ASP.Net MVC文档让我相信没有这样的事件要挂钩。有没有办法破解这个以实现我需要的东西?

编辑:我忘了提到表单正在进行客户端验证。阿拉

<% Html.EnableClientValidation(); %>

编辑:当客户端验证失败时,OnComplete和OnFailure都不会触发。请注意,OnFailure仅在控制器操作失败时触发,而不是在验证失败时触发。

2 个答案:

答案 0 :(得分:0)

您可以停用OnBegin回调中的按钮,并在OnComplete回调中启用它。

答案 1 :(得分:0)

您是否注意到还有OnFailure回调?在OnBegin中将其停用,然后在OnFailure中重新启用。