当前位置: 首页 > news >正文

Vue3+Element Plus 实现table表格中input的验证

实现效果

html部分

<template><div class="table"><el-form ref="tableFormRef" :model="form"><el-table :data="form.detailList"><el-table-column type="selection" width="55" align="center" /><el-table-column label="物资编号" align="center" prop="materialNo" /><el-table-column label="入库数量" align="center" prop="quantity" width="160"><template #default="scope"><el-form-item :prop="'detailList['+scope.$index+'].quantity'" :rules="tableFormRules.quantity"><el-input-number v-model="scope.row.quantity" placeholder="入库数量" :min="1" size="small":max="2147483647"></el-input-number></el-form-item></template></el-table-column><el-table-column label="所属仓库" align="center" width="180"><template #default="scope"><el-form-item :prop="'detailList['+scope.$index+'].warehouseType'":rules="tableFormRules.warehouseType"><el-select v-model="scope.row.warehouseType" placeholder="请选择所属仓库"><el-optionv-for="dict in la_work_area":key="dict.value":label="dict.label":value="dict.value"></el-option></el-select></el-form-item></template></el-table-column><el-table-column label="金额" align="center" width="160"><template #default="scope"><el-form-item :prop="'detailList['+scope.$index+'].money'" :rules="tableFormRules.money"><el-input-number v-model="scope.row.money" :precision="2" @change="changeMoney" size="small":min="0" placeholder="请输入金额"></el-input-number></el-form-item></template></el-table-column><el-table-column label="操作" align="center"><template #default="scope"><el-button link type="danger" icon="Delete" @click="handleDelete(scope.$index)">删除</el-button></template></el-table-column></el-table></el-form></div><div class="tc mt16"><el-button @click="cancel">取消</el-button><el-button @click="submitForm" type="primary" color="#67C23A">提交</el-button></div>
</template>

 数据部分

const { proxy } = getCurrentInstance() as ComponentInternalInstance;
const buttonLoading = ref(false);
const tableFormRef = ref<ElFormInstance>();
const tableFormRules = reactive({quantity: [{ required: true, message: "请输入数量", trigger: "change" }],warehouseType: [{ required: true, message: "请选择所属仓库", trigger: "change" }],money: [{ required: true, message: "请输入金额", trigger: "change" }]
});/** 提交按钮 */
const submitForm = () => {tableFormRef.value?.validate(async (valid: boolean) => {if (valid) {buttonLoading.value = true;//处理自己的业务逻辑proxy?.$modal.msgSuccess("操作成功");cancel();}});
};

http://www.lryc.cn/news/407766.html

相关文章:

  • 安宝特方案|解放双手,解决死角,AR带来质量监督新体验
  • Django教程(005):基于ORM操作数据库的部门管理系统
  • git等常用工具以及cmake
  • Mybatis(四)特殊SQL的查询:模糊查询、批量删除、动态设置表明、添加功能获取自增的主键
  • JS原型与原型链
  • Python编程学习第一篇——Python零基础快速入门(六)(4)异常处理
  • GraphHopper-map-navi_路径规划、导航(web前端页面版)
  • 2-46 基于matlab的声音信号的短时能量、短时过零率、端点检测
  • 力扣630.课程表 II
  • 数字IC后端流程简述
  • 数学建模--整数规划和非线性规划
  • Linux-查看dd命令进度
  • 高效微调 100 多种大语言模型:先计算法,急速推理!
  • opencv grabCut前景后景分割去除背景
  • qt--电子相册
  • 【MSP430】MSP430F5529几个定时器
  • 苍穹外卖(一)之环境搭建篇
  • 【限免】16PAM、16PSK、16QAM、16CQAM星座图及误码率【附MATLAB代码】
  • 09-软件易用性
  • FPGA开发——独立仿真和联合仿真
  • 基于STM32瑞士军刀--【FreeRTOS开发】学习笔记(二)|| 堆 / 栈
  • ABAP+从SAP发出去的PDF文件在第三方系统出现乱码
  • 基于springsecurity的会话并发处理功能(附代码)
  • Redis底层数据结构的实现
  • 制作excel模板,用于管理后台批量导入船舶数据
  • 领略诗词之妙,发觉生活之美。
  • 基于FFmpeg和SDL的音视频解码播放的实现过程与相关细节
  • SSIS_SQLITE
  • Redis 7.x 系列【27】集群原理之通信机制
  • 【五】MySql8基于m2芯片arm架构Ubuntu24虚拟机安装