如何在MVC(.NET)中通过Ajax调用@ Html.Action

时间:2014-04-13 00:31:52

标签: ajax asp.net-mvc loader

我有一个呈现动作的视图。例如:

<h1>Test View</h1>
@Html.Action("Intro", "Account", new { id = "5" })

但是,此操作需要10-20秒才能加载。

如何用装载机将它包装在ajax中?

谢谢!

1 个答案:

答案 0 :(得分:3)

只需创建一个DIV作为占位符,然后将文档加载事件中的内容加载到DIV中。您还可以添加GIF图像以显示进度并在加载内容时隐藏它。以下是如何执行此操作的示例:

<h1>Test View</h1>
<div id="accountInfo"></div>

<script>
   $(document).ready(function () {
      $.ajax({
         type: "GET",
         url: '@Html.Url("Intro", "Account")',
         dataType: "html",
         data: { id : 5 },

         success: function (content) {
            $("#accountInfo").html(content);
         },
         error: function (e) { }
      });
   });
</script>

请注意我没有测试过,只是从头顶写下来,所以可能会有一些小的语法错误,但这会给你一个主要的想法。

希望它有所帮助!