<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>VXE树形表格示例</title>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/vxe-table/lib/index.css">
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/vxe-table/lib/index.js"></script>
</head>
<body>
    <div id="app">
        <vxe-table :data="tableData" :tree-config="{ children: 'children' }" @cell-dblclick="handleCellDblclick">
            <vxe-table-column type="index" width="50"></vxe-table-column>
            <vxe-table-column field="name" title="名称"></vxe-table-column>
            <vxe-table-column field="age" title="年龄"></vxe-table-column>
            <vxe-table-column field="gender" title="性别"></vxe-table-column>
        </vxe-table>
        <button @click="saveData">保存</button>
    </div>
<pre><code>&lt;script&gt;
    new Vue({
        el: '#app',
        data() {
            return {
                tableData: [
                    { id: 1, name: '张三', age: 25, gender: '男', children: [
                        { id: 2, name: '李四', age: 30, gender: '男', children: [
                            { id: 3, name: '王五', age: 35, gender: '男', children: [] }
                        ]}
                    ]}
                ],
                editedData: [] // 保存已编辑的数据
            }
        },
        methods: {
            handleCellDblclick({ row }) {
                if (!this.editedData.includes(row)) {
                    this.editedData.push(row)
                }
            },
            saveData() {
                // 处理保存逻辑,将this.editedData提交到后台
                console.log(this.editedData)
            }
        }
    })
&lt;/script&gt;
</code></pre>
</body>
</html>
VXE树形表格:多条数据编辑后统一保存 - 完整代码示例

原文地址: https://www.cveoy.top/t/topic/pQeq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录