【问题标题】:How to refresh or reload a ViewComponent with Ajax in Asp.net Core 3.1?如何在 Asp.net Core 3.1 中使用 Ajax 刷新或重新加载 ViewComponent?
【发布时间】:2021-10-27 02:12:33
【问题描述】:

我希望 FavoriteComponent 在单击“a”标签时刷新?

HTML:

<div id="favarite-user">
   
        @await Component.InvokeAsync("FavoriteComponent")        
</div>

动作HTML:

<a id="add-fav" onclick="addfavorite('@product.Id')"></a>

jQuery :

 $.ajax({
    type: "post",
    url: '@Url.Action("AddFavorite", "Product")',
    data: { id: id },          
}).done(function (msg) {
    if (msg.status === 'added') {              
        $('#favarite-user').load(' #favarite-user')
    }

});

控制器:

 public IActionResult AddFavorite(Guid id)
    {           
        bool fav = _scope.AddFavorite(id, Guid.Parse(CurrentUserId));
        if (fav == true)
        {
            //return ViewComponent("FavoriteComponent");
          return Json(new { status = "added" });
        }
        return Json(new { status = "removed" });
    }   

【问题讨论】:

    标签: javascript c# jquery ajax asp.net-core


    【解决方案1】:

    这段代码对我有用:

    $.ajax({
        type: "post",
        url: '@Url.Action("AddFavorite", "Product")',
        data: { id: id },          
    }).done(function (msg) {
        if (msg.status === 'added') {              
            $('#favarite-user').load(' #favarite-user')
        }
    });
    

    【讨论】:

    • 这是一个问题还是一个答案?
    • 请在您的回答中提供更多详细信息。正如目前所写的那样,很难理解您的解决方案。
    • @novonimo 这是答案和问题...我有一些 jqury 代码,当这个函数没有执行时它可以工作,但在执行后它不起作用
    • 您可以在原始问题下方的 cmets 中提出您的问题。
    猜你喜欢
    • 1970-01-01
    • 2021-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 1970-01-01
    • 2021-03-30
    • 2016-06-21
    相关资源
    最近更新 更多