如何将值存储在从 javascript 访问的 ViewBag 中?
34881 次
2 回答
40
您不能通过 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>
于 2011-05-31T20:10:02.650 回答
3
你不能。ViewBag 是服务器端的东西,Javascript 在客户端运行。
于 2011-05-31T20:09:56.410 回答