刷新视图组件.net核心RC2

时间:2016-06-28 14:23:51

标签: c# .net asp.net-mvc asp.net-core .net-core-rc2

我有一个普通视图,里面有两个视图组件。普通视图也有一个按钮,两个视图组件也有一个按钮。

如何在普通视图中点击按钮后刷新视图组件? 以及如何在从第一个视图组件中单击按钮后刷新第二个视图组件?

我已经试图找到一种方法,但没有成功!

祝你好运

2 个答案:

答案 0 :(得分:0)

当razor执行该代码时,最终查看组件会生成HTML标记。如果您想更新HTML页面的某些部分(就像部分页面更新),您可以考虑使用jQuery和ajax来实现这一点。

像这样。

$(function(){

   $("#SomeButton").click(function(e){

     e.preventDefault();
     //make the ajax call and get new data/markup for the
     //  div rendered by your first view component and update it      
     var url="TheUrlToActionMethodWhichReturnsPartialMarkup";
     $("#DivIdA").load(url);
   });

});

您也可以为更新页面的其他部分(视图组件2生成的标记)执行相同的操作。将url更新为返回部分视图结果的action方法。

答案 1 :(得分:0)

我试过了:


`$("#buttonrefresh").on("click", function () {`
    `$.ajax({`
        `type: "GET",`
        `url: '@Url.Action("VCTest")'`
    `(function (result) {`
        `$("#show").html(result);`
    `});`
`});`

此脚本用于在普通视图中单击按钮后刷新一个视图组件。 VCTest是视图组件的名称。 show是调用视图组件的div的名称。