vue 创建一个 表格,横向纵向都可以增加(减少)行和列,并且内容内容可以输入,标题可以修改

本文主要是介绍vue 创建一个 表格,横向纵向都可以增加(减少)行和列,并且内容内容可以输入,标题可以修改,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

工作中有需要,就写下记录下(因为只是写了个demo,实际中没有用就先这样记录下,很喜欢写这种需求)

效果图

我的预览地址:https://rainning_z.gitee.io/table_from_add/index.html

我的码云源码:https://gitee.com/rainning_z/table_from_add.git

直接源码

<template><div><h1>demo11</h1><div style="text-align: left"><div v-for="(item, i) in formTitle" style=";width: 100px ;display: inline-block;height: 50px;position: relative" ><input type="text" v-model="formTitle[i]"  @input="changeTitle($event,i)" style=";width: 100px ;display: inline-block;height: 50px"><img style="width: 20px;height: 20px;position: absolute;top: 0px;right: 0px; ":src="delet" @click="deleteTitle(i)"/></div><button style="width: 50px ;display: inline-block;font-size: 30px; " @click="addCloumn">+</button><div v-for="(item, i) in formData" style="display: flex;"><div v-for="(ite, index) in formTitle" style="position: relative;width: 100px ;display: inline-block;height: 50px; "><input type="text" v-model="formData[i][index]"  @input="changeData($event,i,index)"style="width: 100px ;display: inline-block;height: 50px"><img v-if="index==0" style="width: 20px;height: 20px;position: absolute;top: 0px;right: 0px; ":src="delet" @click="deleteData(i,index)"/></div></div><button @click="addRow" style="width: 50px ;display: inline-block;font-size: 30px; ">+</button></div></div>
</template>
<script>export default {data() {return {delet: require('./image/delet.png'),formTitle: ['name', 'sex', 'age'],formData: [[ "tom",  '男',  12], [ "lili", '女' , 14]],tableData: {formData: this.formData,formTitle: this.formTitle},}},mounted() {},methods: {deleteTitle(i){this.formTitle.splice(i,1)this.formData.forEach(item=>{item.splice(i,1)})},deleteData(i){this.formData.splice(i,1)},changeTitle(event, i) {this.formTitle.splice(i,1,event.currentTarget.value)},changeData(event, i,index) {let data=this.formData[i]data[index]=event.currentTarget.value;this.formData.splice(i,1,data)},addCloumn() {this.formTitle.push("请输入标题")},addRow() {this.formData.push({})}}};
</script>

 

 

 

 

这篇关于vue 创建一个 表格,横向纵向都可以增加(减少)行和列,并且内容内容可以输入,标题可以修改的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/239485

相关文章

Vue和React受控组件的区别小结

《Vue和React受控组件的区别小结》本文主要介绍了Vue和React受控组件的区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录背景React 的实现vue3 的实现写法一:直接修改事件参数写法二:通过ref引用 DOMVu

Vue3绑定props默认值问题

《Vue3绑定props默认值问题》使用Vue3的defineProps配合TypeScript的interface定义props类型,并通过withDefaults设置默认值,使组件能安全访问传入的... 目录前言步骤步骤1:使用 defineProps 定义 Props步骤2:设置默认值总结前言使用T

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解

Java使用正则提取字符串中的内容的详细步骤

《Java使用正则提取字符串中的内容的详细步骤》:本文主要介绍Java中使用正则表达式提取字符串内容的方法,通过Pattern和Matcher类实现,涵盖编译正则、查找匹配、分组捕获、数字与邮箱提... 目录1. 基础流程2. 关键方法说明3. 常见场景示例场景1:提取所有数字场景2:提取邮箱地址4. 高级

C#高效实现Word文档内容查找与替换的6种方法

《C#高效实现Word文档内容查找与替换的6种方法》在日常文档处理工作中,尤其是面对大型Word文档时,手动查找、替换文本往往既耗时又容易出错,本文整理了C#查找与替换Word内容的6种方法,大家可以... 目录环境准备方法一:查找文本并替换为新文本方法二:使用正则表达式查找并替换文本方法三:将文本替换为图

C#使用Spire.XLS快速生成多表格Excel文件

《C#使用Spire.XLS快速生成多表格Excel文件》在日常开发中,我们经常需要将业务数据导出为结构清晰的Excel文件,本文将手把手教你使用Spire.XLS这个强大的.NET组件,只需几行C#... 目录一、Spire.XLS核心优势清单1.1 性能碾压:从3秒到0.5秒的质变1.2 批量操作的优雅

MySQL 数据库表操作完全指南:创建、读取、更新与删除实战

《MySQL数据库表操作完全指南:创建、读取、更新与删除实战》本文系统讲解MySQL表的增删查改(CURD)操作,涵盖创建、更新、查询、删除及插入查询结果,也是贯穿各类项目开发全流程的基础数据交互原... 目录mysql系列前言一、Create(创建)并插入数据1.1 单行数据 + 全列插入1.2 多行数据

MySQL 临时表创建与使用详细说明

《MySQL临时表创建与使用详细说明》MySQL临时表是存储在内存或磁盘的临时数据表,会话结束时自动销毁,适合存储中间计算结果或临时数据集,其名称以#开头(如#TempTable),本文给大家介绍M... 目录mysql 临时表详细说明1.定义2.核心特性3.创建与使用4.典型应用场景5.生命周期管理6.注

MySQL的触发器全解析(创建、查看触发器)

《MySQL的触发器全解析(创建、查看触发器)》MySQL触发器是与表关联的存储程序,当INSERT/UPDATE/DELETE事件发生时自动执行,用于维护数据一致性、日志记录和校验,优点包括自动执行... 目录触发器的概念:创建触www.chinasem.cn发器:查看触发器:查看当前数据库的所有触发器的定

创建springBoot模块没有目录结构的解决方案

《创建springBoot模块没有目录结构的解决方案》2023版IntelliJIDEA创建模块时可能出现目录结构识别错误,导致文件显示异常,解决方法为选择模块后点击确认,重新校准项目结构设置,确保源... 目录创建spChina编程ringBoot模块没有目录结构解决方案总结创建springBoot模块没有目录