ASP.NET MVC布局页面中的JavaScript/jQuery不工作
在Chrome浏览器中启用JavaScript。我希望在单击段落时显示一个警报。为什么它不起作用?! 如果我已经让JavaScript工作了,我想jQuery也可以工作 以下是_Layout.cshtml页面:ASP.NET MVC布局页面中的JavaScript/jQuery不工作,javascript,jquery,asp.net-mvc,alert,Javascript,Jquery,Asp.net Mvc,Alert,在Chrome浏览器中启用JavaScript。我希望在单击段落时显示一个警报。为什么它不起作用?! 如果我已经让JavaScript工作了,我想jQuery也可以工作 以下是_Layout.cshtml页面: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <title>@ViewBag.Title - My ASP.NET MVC Ap
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title - My ASP.NET MVC Application</title>
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<meta name="viewport" content="width=device-width" />
@Styles.Render("~/Content/css")
@Scripts.Render("~/Scripts/jquery-1.7.1.js")
@Scripts.Render("~/bundles/modernizr")
<script>
$(document).ready(
$("#para").click(function() {
alert("you clicked the paragraph");
})
);
</script>
</head>
<body>
<p id="para">Some paragraph</p>
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
</body>
</html>
应该是:
$(document).ready(function(){
// ^^^^^^^^^^^ <<<<--------------------------------
$("#para").click(function() {
alert("you clicked the paragraph");
});
});
应该是:
$(document).ready(function(){
// ^^^^^^^^^^^ <<<<--------------------------------
$("#para").click(function() {
alert("you clicked the paragraph");
});
});
您已经包含jquery两次了。一次在头部,一次在末端。试着这样做:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title - My ASP.NET MVC Application</title>
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<meta name="viewport" content="width=device-width" />
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
<p id="para">Some paragraph</p>
@Scripts.Render("~/bundles/jquery")
<script type="text/javascript">
$("#para").click(function() {
alert("you clicked the paragraph");
});
</script>
@RenderSection("scripts", required: false)
</body>
</html>
@Scripts.Render~/bundles/jquery调用使用ASP.NET MVC 4新的绑定机制,其中包括jquery。查看~/App_Start/BundleConfig.cs文件,了解如何配置此文件。还请注意,在我的示例中,我删除了document.ready调用,因为我已将脚本放在文档末尾,因此不再需要该调用。您已经两次包含jquery。一次在头部,一次在末端。试着这样做:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>@ViewBag.Title - My ASP.NET MVC Application</title>
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<meta name="viewport" content="width=device-width" />
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
<p id="para">Some paragraph</p>
@Scripts.Render("~/bundles/jquery")
<script type="text/javascript">
$("#para").click(function() {
alert("you clicked the paragraph");
});
</script>
@RenderSection("scripts", required: false)
</body>
</html>
@Scripts.Render~/bundles/jquery调用使用ASP.NET MVC 4新的绑定机制,其中包括jquery。查看~/App_Start/BundleConfig.cs文件,了解如何配置此文件。还请注意,在我的示例中,我删除了document.ready调用,因为我已将脚本放在文档末尾,因此不再需要它。他包含jQuery多少次并不重要,错误的语法会起作用。在这种情况下可能不重要,但如果不理解代码的作用,将来可能会有问题。我同意您的观点,在这种情况下,语法错误是问题所在,但正如您从我的回答中所看到的,将脚本放在文档末尾的适当位置,您甚至不需要使用文档。ready call.Thank,将会注意到这一点。我不是100%确定捆绑包是什么,这就是我再次包含它的原因。谢谢你的回答。他包含jQuery多少次并不重要,错误的语法也不重要。在这种情况下可能不重要,但如果不理解代码的作用,将来可能会有问题。我同意您的观点,在这种情况下,语法错误是问题所在,但正如您从我的回答中所看到的,将脚本放在文档末尾的适当位置,您甚至不需要使用文档。ready call.Thank,将会注意到这一点。我不是100%确定那个捆绑的东西是什么,这就是为什么我再次包含它。谢谢你的回答。