【问题标题】:django jquery ready event not firingdjango jquery 就绪事件未触发
【发布时间】:2009-06-25 15:28:19
【问题描述】:

我有一个 django 项目,但由于某种原因,基本的 jquery 无法正常工作。

<html>
    <head>
        <link href="/site_media/css/poll.css" rel="stylesheet" type="text/css">
        <script type="text/javascript" src="/site_media/js/jquery-1.3.2.js" />
        <script type="text/javascript">
                $(document).ready(function(){
                    alert('hi there');
                });
        </script>
    </head>

等等……

由于某种原因,ready 事件没有触发。 jquery 和 css 都肯定存在(萤火虫证实了这一点)。页面上没有 javascript 错误。

我是否遗漏了一些非常明显的东西,或者 Django 中是否有一些微妙的东西需要配置才能让 jQuery 使用它。

编辑:事实上,导入jquery后没有javascript工作!添加一个

<script type="text/javascript">alert("hi");</script>

如果放在 jquery 导入之前有效,但不是在之后。

【问题讨论】:

  • 我不知道,出了什么问题,因为这对我来说非常有效。也许试试这个:
  • 我遇到了同样的问题,我花了一段时间才发现 jquery.js 的路径不正确。

标签: jquery django


【解决方案1】:

这可能是由于 jQuery 脚本包含行缺少 &lt;/script&gt; 结束标记。例如:

<script type="text/javascript" src="/site_media/js/jquery-1.3.2.js"></script>

根据SCRIPT 元素here 的HTML 规范中的注释,开始和结束标记都是必需的。

【讨论】:

    【解决方案2】:

    您是否定义了任何其他导致错误的脚本块 - 这可能导致准备就绪无法触发。其他要尝试的事情是确保 w3c 上的 html 验证,在 ie 中运行页面,看看是否会引发 firebug 没有的错误。如果做不到这一点,你能把页面上线,让我自己调查一下吗?

    如果 html 按照您粘贴的方式呈现,那么 django 不会对未触发的 ready 事件产生影响。

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题。将脚本放在 html 正文的末尾解决了这个问题。

      【讨论】:

        猜你喜欢
        • 2011-02-04
        • 1970-01-01
        • 1970-01-01
        • 2011-07-20
        • 2012-02-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多