JQuery - $ 未定义

2023-12-07

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


该错误只能由以下三种情况之一引起:

  1. 您的 JavaScript 文件未正确加载到您的页面中
  2. 你的 jQuery 版本很糟糕。发生这种情况的原因可能是有人编辑了核心文件,或者插件可能覆盖了 $ 变量。
  3. JavaScript 在页面完全加载之前运行,因此,在 jQuery 完全加载之前运行。

首先,确保正确调用什么脚本,它应该看起来像

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

并且不应该有属性async or defer.

那么你应该检查Firebug net面板以查看文件是否确实正确加载。如果没有,它将突出显示为红色,并在旁边显示“404”。如果文件加载正确,则意味着问题是第 2 号。

确保所有 jQuery javascript 代码都在代码块内运行,例如:

$(document).ready(function () {
  //your code here
});

这将确保您的代码正在加载afterjQuery 已初始化。

最后要检查的一件事是确保您没有加载任何插件before你加载 jQuery。插件扩展了“$”对象,因此如果您在加载 jQuery 核心之前加载插件,那么您将收到您所描述的错误。

Note:如果您正在加载不需要 jQuery 来运行的代码,则不需要将其放置在 jQuery 就绪处理程序中。该代码可以使用分隔document.readyState.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JQuery - $ 未定义 的相关文章

随机推荐