c# - 仅某些页面需要 JavaScript 和 jQuery

标签 c# javascript asp.net-mvc razor

我有一个 C#、MVC 网站,我希望将网站所需的所有 JavaScript/jQuery 包含在一个文件中,但某些 JavaScript/jQuery 仅在某些页面上需要。

示例,当前在 JavaScript 文件中,我有如下代码 -

$(document).ready(function () {

    $('#myId').click(function () {
        doCoolStuff();
    });

});

上面的语句在每个页面上都会执行,但只需要在一个页面上执行。让 JavaScript/jQuery 仅在需要它的页面上运行的最佳方法是什么?

最佳答案

您可以使用部分在必要时包含项目,并使其成为非必需项(但在存在时包含)。

_Layout.cshtml

@* ... *@
@RenderSection("Scripts", required: false)
@* ... *@

SomeView.cshtml

@* ... *@
@section Scripts
{
    @* direct inclusion *@
    <script>
        $(function(){
            // your code here
        });
    </script>

    @* or file reference *@
    <script src="@Url.Content("~/Content/alternate.script.js")"></script>
}
@* ... *@

关于c# - 仅某些页面需要 JavaScript 和 jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19142925/

相关文章:

c# - 在 SQL 查询中使用 C# 变量

c# - 将 GetWhere 查询 (Func<entityDTO,bool>) 传递给需要 (Func<entity,bool>) 参数才能工作的数据层方法

javascript - 从 rest node.js 压缩 json 数据使用快速压缩

asp.net-mvc - 开发asp.net mvc app,索引表重叠页面边框

c# - 带有 facebook 登录的 MVC5 空引用

c# - 使用小数据类型(例如 short 而不是 int)是否会减少内存使用量?

javascript - Knockoutjs 绑定(bind)没有改变

javascript - 从另一个域运行 Javascript 函数

c# - 当 # 提供而不是时,如何在 C# 中分离查询字符串?

html - ASP.NET MVC - Razor - 使用操作、 Controller 和 html 属性重载按钮