当用户到达页面末尾时,我正在尝试动态加载新内容。我的网络应用程序使用 gae-python。我使用 ajax & jquery 来更新 html 中的查询。
HTML:
{% block content %}
<div class="hero-unit special-padding">
{% for h in hots %}
{{ h.imageid.get().render() | safe }}
{% endfor %}
{% include 'pager.html' %}
</div>
{% endblock %}
jQuery & AJAX:
$(window).scroll(function () {
if ($(window).scrollTop() + $(window).height() > $('.hero-unit').height() - 100 && !isLoading) {$('#loadpage').click(function() {
var page=$('#loadpage').attr('name');
$.ajax({
type: "POST",
dataType:"json",
url: '/loadpage',
data : {'page': page},
success: updatehtml,
});
return false;
});
});
function updatehtml(e){
for (var i = 0; i < e.length; i++) {
var html= "{{ "+e[i]['imageid']+".get().render() | safe }}";
$('.hero-unit').append(html);
}
}
我序列化数据存储实体并作为 json 传递。它将更新 HTML
{{ datastoreKey.get().render()|safe }}
现在我希望 jinja2 框架.render()
在 ajax 更新我的 HTML 时调用 python 函数。
我知道它可以通过用javascript编写整个HTML代码来完成,但我想知道是否有其他简单/更好的方法来做到这一点。