Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET MVC布局页面中的JavaScript/jQuery不工作_Javascript_Jquery_Asp.net Mvc_Alert - Fatal编程技术网

ASP.NET MVC布局页面中的JavaScript/jQuery不工作

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

在Chrome浏览器中启用JavaScript。我希望在单击段落时显示一个警报。为什么它不起作用?! 如果我已经让JavaScript工作了,我想jQuery也可以工作

以下是_Layout.cshtml页面:

<!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%确定那个捆绑的东西是什么,这就是为什么我再次包含它。谢谢你的回答。