MVC Asp.net使用Ajax网站为每个视图添加脚本

时间:2016-02-15 00:48:31

标签: jquery ajax asp.net-mvc

我的整个网站都是一个Ajax网站,因为我有一个页脚音乐播放器。

我想补充一下:

@using (Html.BeginScriptContext())
{
    Html.AddScriptBlock(
        @<script>
                @if (Request.IsAjaxRequest())
                {
                    <text>
            window.rootQuery = '@Request.Url.Query';
            window.rootAction = '@Url.Action("/")';
            window.absolutePath = '@Request.Url.AbsolutePath';
        </text>
            }
    </script>, 
true);
}

到每个页面,无需进入我的30多个视图并手动执行。 我不能只将它添加到Layout.cshtml中,因为当您返回partialViewResult时,不会调用Layout,这是我的网站90%的时间都在做的事情。 有什么办法吗?

1 个答案:

答案 0 :(得分:1)

一种方法是将此代码添加到局部视图并将此局部视图渲染到您想要的页面。您仍然需要手动添加一行到所有页面。类似的东西:

@Html.RenderPartial("MyPlugin", Model.PluginData);

希望它有所帮助。