首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如果在Python中选中复选框,则从HTML表中删除记录

如果在Python中选中复选框,则从HTML表中删除记录
EN

Stack Overflow用户
提问于 2020-12-10 06:33:00
回答 1查看 136关注 0票数 2

我正在制作一个flask网页,它从一个数据库中动态地生成一个HTML表,并为它旁边的每个记录创建一个复选框。我希望用户一次选择多个记录并将其全部删除,但我似乎不知道如何知道选择了哪些记录。html表的代码如下:

代码语言:javascript
复制
            <thead>
            <tr>
                <th scope="col" class="col-md-1">Delete</th>
                <th scope="col" class="col-md-5">Device Name</th>
                <th scope="col" class="col-md-6">Device MAC</th>
            </tr>
            {% for row in data %}
            <tr>
                <td>
                    <input type="checkbox" name="checkbox{{row .index}}"
                           value={{row .index}}{% if row .like== 1 %} checked {% else %} {% endif %}>
                    {{row .like}}
                </td>
                <td>
                    {{row[0]}}
                </td>
                <td>
                    {{row[1]}}
                </td>
            </tr>
            {% endfor %}
            </thead>
        </table>

我正在考虑使用requests.form的方法来获取“checked”值,但是它不是在表单上,那么我应该如何访问它呢?如何对表中的每条记录执行此操作,以便可以从数据库中删除它们?

编辑:

代码语言:javascript
复制
    @app.route('/', methods=['GET', 'POST'])
    def index():
        if request.method == 'POST':
            if request.form['submit_button'] == 'Add':
                devAdd = [request.form['addDN'], request.form['addMAC']]
                error = addDevice(devAdd)
                return render_template('index.html', 
                errorAdd=error,data=loadDB())
            else:
                #Delete
        else:
            return render_template('index.html', data=loadDB())

if request.form['submit_button'] == 'Add':部件是另一个向表中添加记录的按钮,因此删除过程的代码需要在else: #Delete部件中。但是,表不是表单的一部分,所以我应该创建自己的表单吗?它会引起冲突吗?

EN

回答 1

Stack Overflow用户

发布于 2020-12-10 09:08:24

你也可以发布你的python代码吗?根据您的python代码,我认为一种简单的方法可能是:

  1. Create a form
  2. 将选择字段的值(可能是flask wtform)附加到row_indices (from复选框(True/False) -- JS在这里可能很有用。
  3. 从与表单一起发送的POST请求中检索回这些索引,并根据indices
  4. Redirect将表中的行返回到您在HTML中向我们显示的这条路由(基本上是更新后的表的刷新)。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65225901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档