如何从视图中重新加载局部视图?

时间:2014-04-17 12:48:53

标签: javascript jquery asp.net asp.net-mvc razor

在我的ASP.NET MVC项目中,我遇到以下情况:

具有此操作的ExController:

public ActionResult Index()
{
   //Get Data from Repository
   return View(Model);
}

在Ex View中我有一个Index.cshtml和一个_PartialIndexGrid.cshtml。

在索引中我有一个带复选框的功能区菜单,当我点击它时我想刷新_PartialIndex.cshtml上的网格,是否可能?

索引视图:

 //Ribbon Code here
  @Html.Partial("_PartialIndexGrid", Model)

 <script>
 if (e.parameter) {
            $.ajax({
                url: '@Url.Action("Index")',
                type: "get",                    
                success: function (result) {
                    $("_PartialIndexGrid").html(result);
                },
                failure: function () {
                    alert('error');
                }
            });
 </script>

此脚本实际执行ajax请求,但不重新加载网格局部视图。 感谢。

1 个答案:

答案 0 :(得分:1)

创建一个容器div并在复选框上更改检查它是否已通过ajax调用重新加载部分视图,如下所示:

<div id="PartiaContainer">

 @Html.Partial("_PartialIndexGrid", Model)



</div> 

<input  type="checkbox" id="checkbox1"/>

<script>


$('#checkbox1').change(function(){

            if(this.checked)
            {
            $.ajax({
                url: '@Url.Action("Index")',
                type: "get",                    
                success: function (result) {
                    $("#PartialContainer").html(result);
                },
                failure: function () {
                    alert('error');
                }
            });
}
});
 </script>