如何在ASP .NET Core中使用jquery
我创建了一个ASP.NET核心模板并编写了一个jquery脚本。 当我查看页面时,我看到jquery被加载到页面中,但脚本没有运行。 我查看了ASP.NET文档页面,我的layout.cshtml看起来是一样的,所以我必须采取额外的步骤让jquery工作吗? 主页
@{ ViewData["Title"] = "Home Page"; } $(document).ready(function () { alert("Test"); });
解
@section scripts { $(document).ready(function() { alert("Test"); }); }
我怀疑你的jquery是在页面内容的其余部分之后加载的。
这意味着您无法引用jquery对象,因为尚未初始化库。
加载jquery后移动页面脚本。
为了提高效率,我建议您采用以下两种方式之一:
选项1
使用在jquery之后加载的主脚本文件。
方案2
使用占位符模板,该模板将始终在jquery之后加载,但可以在各个页面上初始化。
主页
内容页
为了澄清
如果你在_Layout
页面中引用jQuery ..请仔细检查以确保该引用位于_Layout
页面的顶部 ,因为如果它位于底部,那么你拥有的每个其他页面都使用_Layout
并拥有jQuery,它将会给你错误,如:
$未定义
因为你在定义之前尝试使用jQuery!
此外,如果您在_Layout
页面中引用了jQuery,那么您不需要在使用_Layout
样式的页面中再次引用它
在开始使用
之前,请确保加载对jQuery的引用。
如果您将引用放在脚本上方,那么您的cshtml应该可以正常工作:
// or whatever version you are using // you do not need to use this reference if you are already referencing jQuery in your Layout page