javascript - flask render_template 不适用于 AJAX 帖子

标签 javascript jquery python ajax flask

我有一个网站可以将 AJAX 帖子发送到 Flask 路由。

我知道有许多类似的问题(请不要标记为重复)使用 AJAX 成功方法来处理响应。这在我的简化示例中可行,但我的实际代码中的路由是从数据库中提取一堆数据,然后将这些数据呈现给多个表。我不想用 JavaScript 重写所有表数据更新,所以我真的只需要重新呈现模板。

python :

from flask import Flask, render_template, request
app = Flask(__name__)


@app.route('/', methods=['GET', 'POST'])
def hello_world(message=None):
    return render_template('test.html', message=message)


app.run()

html

<html>
<head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

    <script>
        $(document).ready(function () {
            $('#mybutton').click(function () {

                $.post(window.location.href, {'test': 'test'});

            });
        });

    </script>
</head>
<body>
{{ message }}
<button id="mybutton" name="mybutton" type="button">Click Me!</button>
</body>
</html>

最佳答案

我在很多页面上寻找这个问题的答案,但直到我找到释放 AJAX 调用的页面才允许重新渲染,但没有一个有效:

$('form').on('submit', function(event) {
   $.ajax({
      type: 'POST',
      url:  "{{ url_for( 'myServerFunction' ) }}",
      data: JSON.stringify({'myId':bunchOfIds}),
      contentType: "application/json",
      success:function(response){ document.write(response); }       
   })

最重要的行是成功行,它释放文档以便重新呈现它。

关于javascript - flask render_template 不适用于 AJAX 帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48015074/

相关文章:

javascript - 通过 onclick 按钮进行 Google Analytics 事件跟踪

python - 为什么调用 fit 会重置 XGBClassifier 中的自定义目标函数?

Java 的 'Keystore' 的 Python 等价物?

javascript - jQuery 验证 Uncaught ReferenceError

Python:证明 NumPy 数组的合理性

javascript - Google Apps 脚本获取错误的持续时间值

javascript - QuietJs - Ionic 3 错误

javascript - 法语日期无效

javascript - 菜单 li anchor 上的 jQuery 单击功能 - slideToggle 不工作(WordPress)

javascript - 当页面上有多个按钮具有相同选择器时,检查到底单击了什么按钮