我在控制器内部得到了一个动作结果,我需要显示来自bootstrap-modal的模态,问题是......。
ScriptManager.RegisterStartupScript
不像旧的asp.net那样工作
有一个解决方案吗?我是mvc的新手。
答案 0 :(得分:4)
好的,从控制器注册javascript的最简单的解决方案非常明显,但对于那些不熟悉该模式的人来说是令人沮丧的:
使用命名部分,我们找到了放置javascript的地方
您可以使用 [命名部分] [1]。
<强> _Layout.cshtml 强>
<head>
<script type="text/javascript" src="@Url.Content("/Scripts/jquery-1.6.2.min.js)">
@RenderSection("JavaScript", required: false)
</head>
和视图的代码
<强> _SomeView.cshtml 强>
@section JavaScript
{
@Html.Raw(ViewBag.message)
}
并在控制器中返回
ViewBag.message = @"<script type='text/javascript' language='javascript'>alert(""Hello World!"")</script>"; ;
答案 1 :(得分:0)
在ASP.NET中,MVC脚本未在控制器操作中注册。控制器和视图之间存在分离。所以你可以直接把脚本放在相应的视图中: