Warm tip: This article is reproduced from serverfault.com, please click

c#-如何从 JS 访问 ViewBag

(c# - How do I access ViewBag from JS)

发布于 2012-04-04 09:02:32

我尝试的方法。

通过浏览器查看 JS,@ViewBag.CC只是空白......(缺失)

        var c = "#" + "@ViewBag.CC";
        var d = $("#" + "@ViewBag.CC").value;
        var e = $("#" + "@ViewBag.CC").val();

        var c = "@ViewBag.CC";
        var d = $("@ViewBag.CC").value;
        var e = $("@ViewBag.CC").val();
Questioner
IAmGroot
Viewed
0
amd 2016-09-30 22:20:27

如果你使用的是剃须刀引擎模板,请执行以下操作

在你看来写:

<script> var myJsVariable = '@ViewBag.MyVariable' </script>

更新: 更合适的方法是在主布局上定义一组配置,例如基本 url、facebook API 密钥、Amazon S3 基本 URL 等......```

<head>
 <script>
   var AppConfig = @Html.Raw(Json.Encode(new {
    baseUrl: Url.Content("~"),
    fbApi: "get it from db",
    awsUrl: "get it from db"
   }));
 </script>
</head>

你可以在 JavaScript 代码中使用它,如下所示:

<script>
  myProduct.fullUrl = AppConfig.awsUrl + myProduct.path;
  alert(myProduct.fullUrl);
</script>