我有一个网页,用户输入一些数据,然后点击提交按钮。我处理数据,然后使用相同的Django模板显示原始数据,提交按钮和结果。当我使用Django模板显示结果时,我希望页面自动向下滚动到结果开始的页面部分。如果用户想要更改原始数据并再次单击“提交”,则允许用户向上滚动页面。希望有一些简单的方法可以做到这一点,我现在看不到。
答案 0 :(得分:11)
如果您在表单的操作方法中提供fragment identifier,它应该已经有用了:
<form method="post" action="/your/url#results">
<!-- ... -->
</form>
在表单下方的某处,您要显示结果:
<div id="results">
<!-- your results here -->
</div>
这会使页面跳转到标识为<div>
的{{1}}。
它是完整的客户端站点,不涉及Django,JavaScript或类似的。
答案 1 :(得分:1)
您需要将数据包装成以下内容:
<div id="some-id">YOUR DATA TO BE DISPLAYED</div>
如果您在视图中进行重定向,则需要重定向到网址:/some-url/#some-id
如果您不进行重定向,则需要使用javascript滚动到底部(但请注意,重定向是保存数据后在视图中使用的优先方式)。