我是.NET MVC的新手。我试图运行所有返回类型的MVC,但我无法工作javascriptResult。以下是我的控制器:
public ActionResult DoSomething() {
string s = "alert('Hello world!');";
return JavaScript(s);
}
这是我认为的
@Ajax.ActionLink("click", "DoSomething", new AjaxOptions())
当我点击链接时,它会显示“alert('Hello world!');”作为一个字符串,因此不会触发警报。这有什么不对吗?
答案 0 :(得分:0)
似乎文档“错误”且Controller.JavaScript
操作结果很可能仅被视为返回JavaScript包含文件(see also this thread):
<强>控制器强>
public ActionResult JavaScript()
{
string s = "alert('Hello world!');";
return JavaScript(s);
}
查看强>
<script type="text/javascript" src="~/Controller/JavaScript"></script>
如果您想要返回内嵌JavaScript,可以将Controller.Content
与Html.RenderAction
结合使用作为您的操作结果:
<强>控制器强>
public ActionResult JavaScript()
{
string s = "alert('Hello world!');";
return Content(s);
}
查看强>
<script type="text/javascript">
@{ Html.RenderAction("JavaScript", "Controller"); }
</script>