我有一个简单的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应用程序,我确信我真的很密集,谷歌上的所有地方都说要检查文件是否被正确引用,我已经检查了一遍又一遍,请建议!: /


当前回答

I had this problem once for no apparent reason. It was happenning locally whilst I was running through the aspnet development server. It had been working and I reverted everything to a state where it had previously been working and still it didn't work. I looked in the chrome debugger and the jquery-1.7.1.min.js had loaded without any problems. It was all very confusing. I still don't know what the problem was but closing the browser, closing the development server and then trying again sorted it out.

其他回答

I had this problem once for no apparent reason. It was happenning locally whilst I was running through the aspnet development server. It had been working and I reverted everything to a state where it had previously been working and still it didn't work. I looked in the chrome debugger and the jquery-1.7.1.min.js had loaded without any problems. It was all very confusing. I still don't know what the problem was but closing the browser, closing the development server and then trying again sorted it out.

这意味着您的jQuery库还没有加载。

您可以在拖动jQuery库后移动代码。

或者你可以用这样的东西

window.onload = function(){
  // Your code here
  // $(".some-class").html("some html");
};  

我也遇到过同样的问题,通过以下步骤解决。 脚本的顺序应该如下所述

    <script src="~/Scripts/jquery-3.3.1.min.js"></script>
    <script src="~/Scripts/jquery-ui.js"></script>
    <script src="~/Scripts/bootstrap.min.js"></script>

这个序列对我的代码不正确,我按照上面的方法纠正了这一点,它解决了我的Jquery未定义的问题。

这是解决这个问题的常见问题,你必须检查一些点

包含主要Jquery库 检查跨浏览器问题 添加库顶部的jquery代码 检查cdn可能被阻止。

详情请见本博客

我得到了同样的错误消息,当我拼写错误的jQuery引用,而不是type="text/javascript",我键入"…javascirpt"。;)