javascript - ASP.NET MVC 4 中的 Toast 通知

标签 javascript jquery asp.net-mvc-4 toastr

我想在用户使用 Toastr 插件单击“添加到购物车”按钮时显示通知。基本上,当用户单击按钮时,它会执行“AddToCart”操作,然后重定向到索引页面。当页面出现时,它会检查 TempData 值,然后显示通知。

这是 Controller :

public ActionResult AddToCart(int id)
    {


        TempData["message"] = "Added";
        return RedirectToAction("Index");
    }

和 View :

@if (TempData["message"] != null)
{

    <script type="text/javascript">
        $(document).ready(function () {   
            toastr.success('Added')
        })
    </script>                                 
}

更新 它根据@Exception 的回答工作。但是,如果我使用 ajax,例如:

@Ajax.ActionLink("Add to cart", "AddToCart", "Home", new { id = item.ProductId }, new AjaxOptions { UpdateTargetId="abc"})

它不起作用。这可能是因为这条线:

$(document).ready(function ()

因为页面没有重新加载。 我该如何解决?

但这行不通。 请帮忙。提前致谢!

最佳答案

答案1:

<script type="text/javascript">
    $(document).ready(function () { 
       if('@TempData["message"]' == "Added"){
          toastr.success('Added');
       }
       else{ }
    });
</script> 

答案2:

尽管 TempData 在一次重定向中保留其值,但有时它会产生问题(建议避免使用 TempData),在这种情况下您可以这样做:

public ActionResult AddToCart(int id)
{
    .........
    return RedirectToAction("Index", new { message="Added" });  //Send Object Route//
}

public ActionResult Index(string message)
{
    .........
    if(!string.IsNullOrEmpty(message)) {
       Viewbag.message=message;
    }
    return View();
}

<script type="text/javascript">
    $(document).ready(function () { 
       if('@Viewbag.message' == "Added") {
          toastr.success('Added');
       }
       else{ }
    });
</script>

关于javascript - ASP.NET MVC 4 中的 Toast 通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25300557/

相关文章:

javascript - Angularjs 指令幻灯片显示和隐藏内容

javascript - 如何从 .JSON javascript 检索数据

javascript - 具有多个 xtypes 的 ExtJS 5 网格小部件列

JavaScript:查找嵌套[引用]

c# - ASP.NET MVC4 重定向到登录页面

asp.net-mvc - Mvc 4 FileNotFoundException MvcSiteMapProvider 问题

java - Facebook 如何在 "Facebook Connect"设置中使用 FB Init 调用设置 Cookie?

Jquery scrollTo 滚动有点太远了

javascript - HTML div 与 jquery on.click 未按预期工作

asp.net-mvc-3 - LINQ to Entities 仅支持转换 EDM 基元或枚举类型