【问题标题】:Working with a separate js file in asp.net mvc application在 asp.net mvc 应用程序中使用单独的 js 文件
【发布时间】:2017-03-28 10:01:08
【问题描述】:

我正在创建一个 asp.net MVC 应用程序。 我想将我的 js 代码与视图中的剃刀代码分开。 所以我有一个路径为“~/Scripts/SearchProductsScript.js”的文件 _Layout.cshtml:

<head>
    ...
    <script src="@Url.Content("/Scripts/jquery-1.10.2.min.js")"></script>
    @if (IsSectionDefined("JavaScript"))
    {
        @RenderSection("JavaScript", required: false)
    }
  ...
</head>

_SomeView.cshtml:

@section JavaScript
{
    <script type="text/javascript" src="@Url.Content("~/Scripts/SearchProductsScript.js")"></script>
}

还有 SearchProductsScript.js:

var uri;

function test() {
    alert("TEST");
}

$(document).ready(function () {
    Doing something here
    $(':radio').change(function () {
        Doing something here
    });
});

我不确定如何正确使用这个单独的 js 文件。这些函数都不起作用,尝试从 _SomeView.cshtml 调用它们不起作用:

<script>
    $(document).ready(function () { test(); });
</script>

<input type="button" value="Search" onclick="test();" />

【问题讨论】:

  • 您是否在浏览器的开发控制台中遇到任何错误,因为您的 SearchProductsScript 中似乎有一个额外的});,但没有任何业务存在。可能只是您将其复制到 SO 的位置​​的错误
  • 哦,我在删除代码时没有删除它,但这不是问题
  • 我得到一个函数没有定义的错误
  • 在控制台源代码中检查您的外部 javascript 是否已加载,如果不是,则可能是 js 路径问题
  • 在我看来是没有加载

标签: javascript asp.net asp.net-mvc asp.net-mvc-4 razor


【解决方案1】:

所以没有调用 js 代码的原因是我试图从局部视图中设置一个部分,这是不可能的。 RenderSection not working inside Partial View in ASP.NET MVC3

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-08
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    相关资源
    最近更新 更多