javascript - Flask jinja2 不刷新页面更新div内容

标签 javascript jquery python flask jinja2

需要实现一些功能,例如 [ http://webonise.co.uk/][1]当点击联系人、恢复、资源链接将更新(位置 URL 和 div 内容)但不刷新页面。

Flask View 函数

@app.route('/')
def index():
    flash('Welcome')
    return render_template('index.html')

index.html 下是 extends base.html

{% block content %}
    {{super()}}
    <section class="content">
        <a href="#"><i class="mdi-event"></i>Event</a>
        <a href="#"><i class="mdi-contact"></i>Contact</a>
        <div class="board">
            {# dynamic template #}
            {# without using {{% include 'event.html' %}} #}
        </div>
    </section>
{%- endblock %}

当点击不同的链接并在 {# dynamic template #}event.html/contact.html 内容> 不刷新页面?

<!--event.html-->
<ul class="list">
    <li>
        <h3>123</h3>
        <p>abc</p>
    </li>
</ul>


我的尝试

导入 jinja2 环境但仍然不知道如何实现这一点

env = Environment(autoescape=True,
loader=FileSystemLoader(os.path.join(os.path.dirname(__file__), 'templates')))
@app.route('/')
def index():
    board = env.get_template('event.html')
    flash('Welcome Home Tyler')
    return render_template('index.html', board=board)

真的需要ajax技术get/post方法来实现这一切吗?

最佳答案

您可以使用 Flask-Sijax这可以帮助您将 Sijax 支持添加到您的 Flask 应用程序。 Sijax是一个 python/jquery 库,它使 AJAX 易于在您的 Web 应用程序上使用。或者你可以这样做:

<script>
    $(document).ready( function() {
        $('#next').click(function() {
           $.ajax("{{ url_for('yourroute') }}").done(function (reply) {
              $('#container').html(reply);
           });
        });
    });
</script>

<input type="button" id="next" value="Next" />
<div id="container"></div>

关于javascript - Flask jinja2 不刷新页面更新div内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38379507/

相关文章:

javascript - 如何删除除一类之外的所有类

javascript - 更改为不同的网址。简单易变一一不同

c++ - 有没有办法使用 SWIG 将不同的数组类型从 python 传递到 c++?

javascript - 如何使用 Backbone.js 在 Bootstrap Modal 中加载 API 结果

javascript - 散点图实现的固定轴

javascript - 将项目添加到 json 对象数组中

javascript - 设置浏览器关闭超时

javascript - 在移动设计中替换图像的 HTML。喜欢 Paypal.com

python - 从数字集 N 生成长度 k 的组合,顺序很重要,允许替换

python - 如何使用python中内置的numpy或matplotlib正确生成3d直方图?