如何在.net Core的视图类中使用loadjsfile

本文关键字:loadjsfile 视图 net Core | 更新日期: 2023-09-27 18:02:52

我有以下代码,我已经从。net迁移到。net Core。

不幸的是,javascript文件没有被加载loadjsfile。我可以用什么来加载这些javascript文件到我的视图类?

<script>
    function loadjsfile(filename) {
        var fileref = document.createElement("script");
        fileref.setAttribute("type", "text/javascript");
        fileref.setAttribute("src", filename);
        document.writeln(fileref.outerHTML);
    };
    if (jQuery == undefined) loadjsfile(@Url.Content("~/Scripts/jquery-1.11.2.min.js"));
    loadjsfile(@Url.Content("~/Scripts/jquery.validate.min.js"));
    loadjsfile(@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js"));
    loadjsfile(@Url.Content("~/Scripts/contactusform.js");
</script>

目前,我知道"contactusform.js"没有被加载,因为我在一个输入按钮中调用一个javascript方法,它说该方法找不到。

如何在.net Core的视图类中使用loadjsfile

如果loadjsfile方法接受字符串值,您应该将Url.Content调用的结果用引号括起来。

loadjsfile("@Url.Content("~/Scripts/jquery.validate.min.js")");

您也可以考虑使用带有asp-fallback-src属性的脚本标记帮助器。

<environment names="Staging,Production">
    <script src="//ajax.aspnetcdn.com/ajax/jquery/jquery-2.1.4.min.js"
                asp-fallback-src="~/lib/jquery/dist/jquery.min.js"
                asp-fallback-test="window.jQuery">
    </script> 
</environment>

asp-fallback-src值更新到库的本地副本。