我用这个Ajax.BeginForm
<% using( Ajax.BeginForm( "Create","Mandate", new AjaxOptions( ) { OnSuccess = "GoToMandates", OnFailure = "ShowPopUpError" } ) ) {%> <% } %>
我需要在控制器中写些什么才能捕获此OnSucces和OnFailure。
因为OnSuccess我需要显示成功消息
OnFailure我需要显示其他消息。
在我的控制器中
Public ActionResult GetSomething(FromCollection collection) { if(exists == null) { //OnSuccess } else { //OnFailure } }
可以给anydboy帮帮我吗。
谢谢
OnSuccess和OnFailure看起来像他们期望的javascript回调函数。
<script type="text/javascript"> function handleError(ajaxContext) { var response = ajaxContext.get_response(); var statusCode = response.get_statusCode(); alert("Sorry, the request failed with status code " + statusCode); } </script> <%= Ajax.ActionLink("Click me", "MyAction", new AjaxOptions { UpdateTargetId = "myElement", OnFailure = "handleError"}) %>
Pro ASP.NET Framework第425页的示例
ASP.NET AjaxOptions类
添加了控制器示例
最简单的方法就是我在这里得到的内容,但我建议使用某种ViewModel来查看强类型的mvc视图,并可能考虑将jQuery用于ajax。话虽如此,这有望为您服务。
if (exists) { ViewData["msg"] = "Some Success Message"; } else { ViewData["msg"] = "Some Error Message"; } return View();
在您看来
<div id="myResults" style="border: 2px dotted red; padding: .5em;"> <%: ViewData["msg"]%> </div>