2016-08-01 52 views
0

我被困在这个问题上,并且一直在捣毁我的头,它看起来非常可行并且容易,但它现在不是单击。当孩子模态弹出关闭时,刷新父页面的一部分

我有一个MVC6视图,它由各种partials组成。 在泛音之一,说我有一个anchor标签:

@model ModelA 
<div> 
    @Html.TextBoxFor(m=>m.Id) 
    <a onclick="BookProduct();" style="pointer:cursor">Book Product</a> 
</div> 
<div id="divModalBody" class="modal fade" tabindex="-1" role="dialog"> 
    <div id="divModalPopup"> 
    </div> 
</div> 

<script> 
    function BookProduct() 
    { 
     $.ajax({ 
     url:'Controller1/BookProduct', 
     type:'GET', 
     dataType:'html', 
     data:SOME SAMPLE DATA, 
     success:function(result) 
      { 
      if(result!=undefined) 
       { 
       $("divModalBody").html(result); 
       } 
      }, 
     error:function(xhr) 
      { 
      console.log(xhr); 
      } 
     }); 
    } 
</script> 

BookProduct()功能基本上调用controller方法,并显示通过AJAX call结果在modal popup

我在popup中执行一些操作,然后点击Save

数据验证并保存到数据库中,控件返回到success part of the modal popup

I then close the popup and need to refresh the partial of the parent page and maybe bind it to a list. 

如何让我的父页面明白popup工作已经完成,现在partial view需要被刷新?

请指导。

+0

你可以分享你的弹出呼叫的成功部分吗?您应该能够访问那里的DOM,并使用ajax重新加载局部视图。 – Shyju

+0

@ Shyju..apparently上面只是一个示例代码,弹出窗口和它的代码已经由一个开发人员开发,它位于一个单独的js文件中,坦率地说,我不知道帽子已经写在成功部分弹出窗口。我不确定是否可以在那里访问我的DOM。但是如果你给出一些关于如何执行的指示,我明天会试一试,因为我现在没有权限访问TFS。谢谢 – Anurag

+0

您应该可以访问DOM,因为通常会将poup附加到同一页面。 – Shyju

回答

0

从你的控制器你必须使用返回partialview而不是 return jsonresult。