2

我是 .NET MVC 的新手。我试图运行所有返回类型的 MVC,但我无法工作 javascriptResult。以下在我的控制器中:

    public ActionResult DoSomething() {
        string s = "alert('Hello world!');";
        return JavaScript(s);
    }

这在我看来

@Ajax.ActionLink("click", "DoSomething", new AjaxOptions())

当我点击链接时,它会显示“alert('Hello world!');” 作为字符串,因此不会触发警报。这里有什么问题?

4

1 回答 1

0

似乎文档是“错误的”,并且Controller.JavaScript操作结果很可能只考虑返回 JavaScript 包含文件(另请参见此线程):

控制器

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>
于 2013-02-01T15:21:16.587 回答