我有一个页面使用Javascript加载多个PartialViews。我正在尝试在某些Javascript中访问ViewBag,但遇到了问题。
我的视图:
<div>
<script>
var test = @ViewBag.test;
alert(test);
</script>
</div>
处理此视图的控制器:
public PartialViewResult MyView()
{
ViewBag.test = "test";
return PartialView();
}
当我运行它时,Javascript警报没有出现。我在视图对 ViewBag 的调用下得到一个"条件编译已关闭"突出显示。
渲染视图时,将生成以下内容:
var test = test;
..这显然不是有效的JavaScript。
您需要将其括在引号中:
var test = "@ViewBag.test";
它产生:
var test = "test";
..有效的Javascript。