如何在一个局部视图中工作而另一个在mvc中加载

时间:2015-03-04 13:40:03

标签: asp.net-mvc-4

我有一个视图,我正在使用4局部视图。 页面加载时所有4个部分视图都已加载。所以开始工作 我必须等待上传所有局部视图。

我必须这样做,我应该继续努力 第一个局部视图,而第二个部分视图正在加载,等等所有下一个局部视图。所以PLZ建议我解决方案。

我的部分观点

    <div>@Html.Partial("_First")</div>
    <div>@Html.Partial("~/Views/Controller1/_Second.cshtml")</div>
    <div>@Html.Partial("_Third")</div>
    <div>@Html.Partial("~/Views/Controller2/_Forth.cshtml")</div>

1 个答案:

答案 0 :(得分:0)

在页面加载后,给你的div id&#39;并使用Ajax加载部分视图。

 <div id="firstId">@Html.Partial("_First")</div>
 <div id="secondId">@Html.Partial("~/Views/Controller1/_Second.cshtml")</div>
 <div id="thirdId">@Html.Partial("_Third")</div>
 <div id="fourthId">@Html.Partial("~/Views/Controller2/_Forth.cshtml")</div>

为你的Ajax调用做这样的事情......

 <script>
      $(function loadPartialView1()  {
           $.ajax({
                url: '@url.Action("_First", "YourControllerNameHere")',
                type:  'Post',
                data: {''},
                cache:  'false'
                async:  'true',
                success:   function (result)  {
                     $('#firstId').html(result);
                }
           });
      });
      ...for each one of your PartialViews
 </script

使用$(函数loadPartialView1()部分语法可能有些偏差,但这是使函数等到文档加载的简写方法。长版本对我的MVC 4项目不起作用