MVC3 - Ajax加载图标

mp3*_*uck 6 ajax asp.net-mvc actionresult asp.net-mvc-3

我想在ActionResult请求期间显示一个ajax加载图标,可能需要几秒钟才能处理.

完成此任务的最佳方法是什么?

我只想在构建验证通过后显示图标(我正在使用MVC3,EF Code First,因此验证会自动放在页面上).

在ActionResult期间可能还有进一步的验证/异常,在这种情况下会向用户显示一条消息,然后我想让加载图标再次消失.

谢谢!

Chr*_*ris 12

将您的链接定义为Ajax操作链接,并在页面的某处指定旋转GIF的ID.

<div id="result"></div>
<img id="spinner" src="../content/ajaxspinner.gif" style="display: none;">
@Ajax.ActionLink("Link Text", "ActionName", "ControllerName", null, new AjaxOptions{UpdateTargetId = "result", LoadingElementId = "spinner"}, null)
Run Code Online (Sandbox Code Playgroud)

或者如果是表格:

@using(Ajax.BeginForm("Action", "Controller", null, new AjaxOptions{UpdateTargetId = "result", LoadingElementId = "spinner"}, null))
{
   @Html.TextBox("Data")<br/>
   <input type="submit" value="Submit" />
}
Run Code Online (Sandbox Code Playgroud)