扩展其他答案,可以将此值注入您的客户端javascript。如果 JS 在 CSHTML 文件中,您只需执行以下操作:
//Controller Action
public ActionResult SomeAction()
{
ViewBag.Color = "green"; // Get this from ConfigurationManager.AppSettings, database, or anywhere
return View();
}
// on the view
<script type="text/javascript">
var myColor = '@ViewBag.Color';
// use myColor as any other jS variable
</script>
如果您的 javascript 位于单独的 .js 文件中,则必须先从 .cshtml(或 .aspx)中获取变量,然后才能在 .js 文件中使用它。
要回答您关于item
视图中的内容的问题:
在这种情况下,它是剃刀页面上的一个变量。如果视图是强类型的,它将在顶部定义一个模型,然后Model
是一个可以在页面上使用的变量@Model
。如果模型是某种集合,人们通常会遍历它并为集合中的每个项目输出一个项目,例如:
@foreach(var item in Model)
{
<span>@item</span>
}
但该变量也可以即时创建,并根据需要使用,例如:
@{
var item = "some string";
var foo = "bar";
}
然后在您的 javascript 中使用,如上所示:
<script type="text/javascript">
var item = '@item';
</script>