烧瓶& Bootstrap多个可折叠,但它们每个只打开第一个

时间:2016-02-14 19:37:43

标签: python html twitter-bootstrap-3 flask

我有一个HTML页面,显示由电子邮件填充的数据库。我把它们展示在一个可折叠的地方,对于每个帖子,它的时间戳是切换它的内容,内部是电子邮件本身。 HTML页面的结构如下:

   compile 'com.google.android.gms:play-services-identity:7.8.0'

compile 'com.google.android.gms:play-services-location:7.8.0'

{% extends "base.html" %} {% block content %} {% for email in emails %} <div><button class="btn" data-toggle="collapse" data-target="#demo">{{ email.timestamp }}</button> <div id="demo" class="collapse"> {{ email.body }} </div> {% endfor %} {% endblock %}

的相关部分
views.py

生成一个如下所示的网页:http://imgur.com/noqC40E

问题在于,无论我点击哪个时间戳,只有第一个可折叠打开和关闭。我已经尝试了很多方法来修复它,主要是搞乱HTML页面和@app.route('/cruz') def cruz(): u = Politician.query.get(1) emails = u.emails.all() return render_template('cruz.html',title='Ted Cruz',emails=emails) 块以及放置for的位置,但我做的任何事情似乎都没有用。任何人都可以看到这出错的地方吗?

1 个答案:

答案 0 :(得分:1)

您每次为id生成相同的div属性:

<div id="demo" class="collapse">

您几乎肯定需要生成唯一的ID。您可以通过添加循环索引来生成唯一ID:

<div id="demo-{{loop.index}}" class="collapse">