使用DJANGO和AJAX刷新数据列表和页面数
问题描述:
我正在尝试重新加载“下一页”而不重新加载整个页面。我只想要我的数据表进行更新。我发现这是用ajax完成的。在互联网上做了一些研究之后,我现在知道你的ajax/javascript会转到某个url,并且在django中,你将视图映射到那个url会返回新的数据。直到这一点,一切都清楚了。但现在我不得不做一些JavaScript来做到这一点,我完全失去了。使用DJANGO和AJAX刷新数据列表和页面数
这是DataList控件在我的模板
<div class="project-container">
{% for project in pagination.projects %}
<div class="project">
<h4 class="strong">{{ project.name }}</h4>
<div class="project-details-vars">
<p>{{ project.info_veld_1 }}</p>
<p>{{ project.info_veld_2 }}</p>
<p>{{ project.info_veld_3 }}</p>
<p>{{ project.info_veld_4 }}</p>
<p>{{ project.info_veld_5 }}</p>
</div>
</div>
{% endfor %}
</div>
这是我的模板我的自定义分页程序。
<div id="paginator">
{% if pagination.prevPage %}
<a href="/page/{{ pagination.prevPage }}">
<img src="/static/images/arrow-left.png" />
</a>
{% endif %}
{% if pagination.nextPage %}
<a href="/page/{{ pagination.nextPage }}">
<img src="/static/images/arrow-right.png" />
</a>
{% endif %}
</div>
可以some1请告诉我,在URL触发JavaScript和只刷新数据列表上的数据和更新的URL。
感谢提前:)
答
有一个很好的javascript叫ajaxroutine。看到这个link。所有你需要做的就是下载脚本,使用
<script src="text/javascript" src="ajaxroutine.js"></script>
然后你在你的HTML代码,其中"/Example"
是您的网址,"name=George&age=27"
是附加参数调用
ajaxpack.getAjaxRequest("/Example", "name=George&age=27", processGetPost, "txt")
,processGetPost
是回调,一javascript函数将在你的代码中运行后,在响应和"txt"
只是要知道,响应是在TXT格式(我认为它也可以在XML中,但老实说,我从来没有尝试过)。这个ajaxroutine对我很好。你应该试试。在我刚开始提到的链接中有更多的解释。
这一切都很清楚,但我的主要问题是processGetPost我猜。如何让新的变量进入schreen ... – Stephan 2011-03-11 14:13:11
那么,你不能使用django模板语言。您的回应必须将数据传递给processGetPost,并且在此函数中您必须手动创建html。我猜想一些硬核javascripting。我不知道另一种方式去做,对不起。 – freakish 2011-03-11 15:42:37