我有一个简单的jquery点击事件

<script type="text/javascript">
    $(function() {
        $('#post').click(function() {
            alert("test"); 
        });
    });
</script>

以及在site.master中定义的jquery引用

<script src="<%=ResolveUrl("~/Scripts/jquery-1.3.2.js")%>" type="text/javascript"></script>

我已经检查了脚本被正确解析,我能够看到标记,并直接在firebug中查看脚本,所以我必须被发现。然而,我仍然得到:

$没有定义

jquery没有一个是有效的。我还尝试了它的各种变体,比如$(document)。ready和jQuery等。

这是一个。net 3.5上的MVC 2应用程序,我确信我真的很密集,谷歌上的所有地方都说要检查文件是否被正确引用,我已经检查了一遍又一遍,请建议!: /


当前回答

只需把jquery url放在你的jquery代码的顶部

像这样,

<script src="<%=ResolveUrl("~/Scripts/jquery-1.3.2.js")%>" type="text/javascript"></script>

<script type="text/javascript">
    $(function() {
        $('#post').click(function() {
            alert("test"); 
        });
    });
</script>

其他回答

经过一些测试,我找到了一个快速的解决方案, 你可以在你的索引页顶部添加:

<script>
$=jQuery;
</script>

它工作得很好:)

我也有同样的问题,但不知道是什么原因导致的。我最近将HTML文件从日语转换为UTF-8,但我没有对脚本文件做任何处理。不知何故,jquery-1.10.2.min.js在这个过程中被损坏了(我仍然不知道是怎么回事)。用原来的替换jquery-1.10.2.min.js修复了它。

检查jquery文件的确切路径是否包含在内。 < script src = "资产/插件/ jquery / jquery.min.js " > < /脚本>

如果你在你的页面底部添加这个,请在这个声明下面调用JS函数。

使用此代码测试检查, <脚本type = " text / javascript”> / * * * *由dadennew创建 *使用ajax提交电子邮件订阅 *发送电子邮件地址 *发送控制器 *收到回复 * / $(document).ready(function(){//你可以用Jquery替换$ jquery working~!”); });

和平!

它可能是在jquery脚本被调用之前,你已经调用了你的script标签。

<script type="text/javascript" src="js/script.js"></script>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>

这个结果是没有定义$

把jquery.js放在你的脚本标签之前,它会工作;)像这样:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript" src="js/script.js"></script>

在视图和主布局中使用脚本部分。

将视图中定义的所有脚本放在视图的scripts部分中。通过这种方式,您可以让主布局在所有其他脚本加载后加载此脚本。这是启动一个新的MVC5 web项目时的默认设置。不确定早期版本。

视图/ Foo / MyView.cshtml:

// The rest of your view code above here.

@section Scripts 
{ 
    // Either render the bundle defined with same name in BundleConfig.cs...
    @Scripts.Render("~/bundles/myCustomBundle")

    // ...or hard code the HTML.
    <script src="URL-TO-CUSTOM-JS-FILE"></script>

    <script type="text/javascript">
      $(document).ready(function () {

        // Do your custom javascript for this view here. Will be run after 
        // loading all the other scripts.            
      });
    </script>
}

视图/共享/ _Layout.cshtml

<html>
<body>
    <!-- ... Rest of your layout file here ... -->

    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")
    @RenderSection("scripts", required: false)
</body>
</html>

注意脚本部分是如何在主布局文件中最后呈现的。