从javascript将值存储在ViewBag中

问题描述

| 如何在通过JavaScript访问的ViewBag中存储值?     

解决方法

        您无法通过javascript在ViewBag中存储值。 ViewBag是服务器端的概念,仅存在于服务器上。 Javascript在客户端上运行。至于将ViewBag中的某些数据存储到javascript变量中,则可以使用以下方法:
<script type=\"text/javascript\">
    var foo = @Html.Raw(Json.Encode(ViewBag.FooBar))
</script>
现在,我总是建议人们不要在ASP.NET MVC中使用ViewBag / ViewData。我建议使用强类型的视图和视图模型。因此,您的代码将如下所示:
@model MyViewModel
<script type=\"text/javascript\">
    var foo = @Html.Raw(Json.Encode(Model))
</script>
    ,        你不能。 ViewBag是服务器端的东西,Javascript在客户端运行。