【问题标题】:Call javascript when URL has more parameters当 URL 有更多参数时调用 javascript
【发布时间】:2016-10-15 15:33:37
【问题描述】:

我在 ASP MVC5 中有一个应用程序,虽然大多数工作正常,但在引用 javascript 文件时遇到问题,基本上如果 URL 直接指向 mypage.com/admin/products/create 等控制器,则脚本会被调用并正常工作很好,但是,当调用带有 mypage.com/admin/products/edit/1525 之类的附加参数的控制器时,我必须将“../”添加到 javascript 文件引用中,否则它不会加载以及任何在没有'../'的情况下引用javascript中的图像或路径我得到一堆404。 我相信我需要在我的路线中设置一些东西,但不确定,这是我的路线配置

    public static void RegisterRoutes(RouteCollection routes)
    {
        var namespaces = new[] {typeof (HomeController).Namespace} ;
        var AdminNamespaces = new[] {typeof (Areas.Admin.Controllers.HomeController).Namespace};

        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");


        routes.MapRoute("Home", "", new {controller = "Home", action = "Index"}, namespaces);
        routes.MapRoute("Login", "login", new { controller = "Login", action = "Index" });
        routes.MapRoute("Logout", "logout", new {controller = "Login", action = "Logout"});

    }

这是区域注册

    public override void RegisterArea(AreaRegistrationContext context) 
    {
        context.MapRoute(
            "Admin_default",
            "admin/{controller}/{action}/{id}",
            new { action = "Index", controller = "Home", id = UrlParameter.Optional }
        );
    }

不知道我还能添加什么有用的东西

我遇到问题的一个特定脚本是 nicedit 文本编辑器,我将它放在我的包中,如下所示:

        bundles.Add(new ScriptBundle("~/scripts/nicedit")
            //.Include("~/scripts/lodash.js")
            .Include("~/scripts/nicedit.js")
            );

最后我像这样在我的视图(不是布局)cshtml上调用它:

@Scripts.Render("~/Scripts/nicedit")

【问题讨论】:

  • 你是如何添加你的 JS 文件引用的?这很可能是问题所在。我几乎 100% 与路由无关。我也从问题中删除了 asp-classic 标签,这不相关。
  • 向我们展示您的捆绑配置?
  • 编辑添加包以及如何从视图中调用它

标签: javascript c# asp.net-mvc


【解决方案1】:

查看 JS 和 CSS 捆绑(在 .NET 中已有一段时间可用)。

请注意,过去 CSS 捆绑会破坏图像的相对 URL(在 CSS 中)。如果这成为问题,请查看 CSS 重写转换 (MVC Bundling and CSS relative URLs)

【讨论】:

  • 这并没有真正回答问题,它更像是一个评论。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-23
  • 1970-01-01
  • 2011-05-26
  • 1970-01-01
  • 1970-01-01
  • 2021-04-19
  • 1970-01-01
相关资源
最近更新 更多