【问题标题】:Google App Engine, Jquery, load methodGoogle App Engine,Jquery,加载方法
【发布时间】:2010-11-26 05:19:22
【问题描述】:

大家好,App Engine 和 jQuery 新手,这里是:

我想在点击时使用 jQuery 的加载方法将内容动态加载到 div 中:

 $('#menu a').click(function(event) {
                event.preventDefault();
                var page = $(this).attr('href');
                $('#header').load(page);
        });

<div id="menu">
<ul>
  <li><a href="home.html" class="active">About</a></li>
  <li><a href="news.html">News</a></li>
</ul>
</div>
<div id="header">
</div>

如果我目前在 /home,使用应用程序引擎,这会将我路由到 /home/page,而不是将页面加载到我的 &lt;div id="header"&gt; 并将我留在 /home。上面的代码在不使用应用引擎的情况下工作(这意味着页面上的内容被动态加载到我的 div 中,并且我停留在 URL /home)。我错过了什么?

【问题讨论】:

    标签: jquery google-app-engine load


    【解决方案1】:

    您需要将 jquery 放在菜单 HTML 下方,或者(推荐)放在 $(document).ready(function() { ... });

    【讨论】:

    • 另一个应该起作用的选项是使用live,像这样:$('#menu a').live('click', function(event) {...});
    • 我有 $(document).read() 并且我尝试了 .live('click') 但我仍然被路由到 /home/page...感谢您的建议虽然
    • 不幸的是,我不能。但是,这里有更多信息:在我的应用程序引擎 python 脚本中,我有一个类仅用于生成 index.html。 index.html 包含上面提到的所有代码,我有单独的文件,其中包含 html 片段,这些片段旨在单击时加载到 index.html 中。我在 webapp.WSGIapplication 列表中有一个对应于 index.html 的条目。我的 app.yaml 中有四个处理程序:1) /css 2)/images 3)/js 4)/dev(按此顺序,最后一个是我的项目所在的位置)。希望对您有所帮助,抱歉,我无法上传该页面的运行版本。感谢您的帮助
    【解决方案2】:

    您确定您正在运行 appengine 服务器吗?

    您无法通过服务器访问自己的文件系统。

    【讨论】:

    • 我正在使用谷歌应用引擎启动器运行整个程序。
    • 那么,home.html 和 news.html 只是静态文件?
    猜你喜欢
    • 2010-11-20
    • 2023-03-16
    • 2011-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-26
    • 2013-09-26
    相关资源
    最近更新 更多