Flask:在警报框中显示 flash 消息

Flask: show flash messages in alertbox

我一直在研究 Flask,我遇到了 Flash。如果在服务器端调用了 flash,它会在页面上显示一条消息。但是,我想在警告框中显示内容 get_flashed_messages() 。我试图使 JS 函数并传递 {{message}} 但循环打印调用,即将调用作为字符串。

{% with messages = get_flashed_messages() %}
{% if messages %}
 <ul class=flashes>
 {% for message in messages %}
  <li>{{ message }}</li>
 {% endfor %}
 </ul>
{% endif %}
{% endwith %}

有什么办法可以解决吗?

您可以创建包含消息的 JS 变量

{% with messages = get_flashed_messages() %}
  {% if messages %}
    <script>
      var messages = {{ messages | safe }};
      for (var i=0; i<messages.length; i++) {
        alert(messages[i]);
      }
    </script>
  {% endif %}
{% endwith %}