CodeGo.net>为什么jqueryval包渲染为空?

我正在尝试渲染脚本包,但是它是空的.

这是BundleConfig.cs中的脚本包声明

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
                    "~/Scripts/jquery-{version}.js"));

bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
                  "~/Scripts/modernizr-*"));

bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
                  "~/Scripts/bootstrap.js",
                  "~/Scripts/respond.js"));

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                  "~/jquery.unobtrusive.ajax*",
                  "~/jquery.validate.unobtrusive.bootstrap*"));

在我看来

@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/jqueryval")

但是,当我加载页面时,jqueryval脚本显示为空.

<script src="/bundles/jquery?v=Nsx6sB8o7LJCR51P5u-dfe-6LePnt87pD0P5VTJ-0wI1"></script>

<script src="/bundles/bootstrap?v=XkxfR798CUJPhMhSd0B8VYgZWSNOTtLvz6047jf84wQ1"></script>

<script src="/bundles/modernizr?v=K-FFpFNtIXPUlQamnX3qHX_A5r7TM2xbAgcuEmpm3O41"></script>

<script src="/bundles/jqueryval?v="></script>

Firefox中的调试器说,检索捆绑包的文件时返回200状态,但是文件大小为0.

解决方法:

您的路径很可能不正确.这个:

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                  "~/jquery.unobtrusive.ajax*",
                  "~/jquery.validate.unobtrusive.bootstrap*"));

应该

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                  "~/scripts/jquery.unobtrusive.ajax*",
                  "~/scripts/jquery.validate.unobtrusive.bootstrap*"));

请记住,解析路径时,〜/会映射到网站的虚拟根目录,因此,除非将JavaScript文件放在网站的根目录中,否则捆绑包中的这些路径将不起作用.

上一篇:我无法在控制器中发布的文本框中获取值


下一篇:[Neural Networks] Momentum