在Google App Engine中加载JavaScript

时间:2011-03-12 15:53:10

标签: javascript jquery python google-app-engine

我在Google App Engine中加载JavaScript时感到很困惑。我正在使用Django模板。

首先,在我的基础 HTML文件中,我无法从本地说d:/jquery.js加载我下载的jQuery代码,例如

<script src="d:\jquery.js" type="text/javascript" ></script></head>,

此行位于我的基本HTML文件中。当我从远程加载jQuery时,它可以正常工作。像

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"type="text/javascript" ></script></head>

我不知道为什么。

其次,我无法将自己创建的JavaScript代码加载到HTML文件中。假设我创建了一个JavaScript文件,例如layout.js,我尝试在我的子HTML文件中加载它,顺便说一句,它继承自 base HTML。

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

它根本不起作用。我尝试过的唯一方法就是将实际的JavaScript代码放在我的基本HTML文件的主体中。像

<body><script>
    $(document).ready(
        $("#yes").click(function() {
            $("#no").hide("slow");
    }));
</script>

我不知道为什么......我该如何解决?

1 个答案:

答案 0 :(得分:19)

AppEngine对本地系统上的路径一无所知;它只会上传您配置的文件。通过在app.yaml文件中添加这样的行来执行此操作:

handlers:
- url: /js
  static_dir: js

在这种情况下,/js表示主项目目录的子目录,您可以将所有静态JavaScript文件放在那里。它们将被上传到生产服务器,您可以将它们包含在HTML中:

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