Spa之表单验证+增删改查

js+html写的实现表格的动态增删改查和表单验证 立即下载

Spa之表单验证+增删改查


参照我博文 https://blog.youkuaiyun.com/water_java/article/details/101622985观看

表单验证

<template>
	<div>
		<!-- 模糊查询 -->
		<el-form :inline="true" :model="formInline" class="user-search">
			<el-form-item label="搜索:">
				<el-input size="small" v-model="formInline.title" placeholder="输入文章标题"></el-input>
			</el-form-item>
			<el-form-item>
				<el-button size="small" type="primary" icon="el-icon-search" @click="search">搜索</el-button>
				<el-button size="small" type="primary" icon="el-icon-plus" @click="handleAdd()">添加</el-button>
			</el-form-item>
		</el-form>

		<el-table size="small" :data="listData" element-loading-text="拼命加载中" style="width: 100%;">
			<el-table-column align="center" type="selection" min-width="1">
			</el-table-column>
			<el-table-column sortable prop="id" label="文章ID" min-width="1">
			</el-table-column>
			<el-table-column sortable prop="title" label="文章标题" min-width="3">
			</el-table-column>
			<el-table-column sortable prop="body" label="文章内容" min-width="5">
			</el-table-column>
			<el-table-column align="center" label="操作" min-width="300">
				<template slot-scope="scope">
					<el-button size="mini" @click="handleEdit(scope.$index, scope.row)">编辑</el-button>
					<el-button size="mini" type="danger" @click="deleteUser(scope.$index, scope.row)">删除</el-button>
				</template>
			</el-table-column>
		</el-table>
		<!-- 分页 -->
		<el-pagination style="margin-top: 20px;" @size-change="handleSizeChange" @current-change="handleCurrentChange"
		 :current-page="formInline.page" :page-sizes="[10, 20, 30, 50]" :page-size="100" layout="total, sizes, prev, pager, next, jumper"
		 :total="total">
		</el-pagination>
		<!-- 表单验证 -->
		<el-dialog :title="title" :visible.sync="editFormVisible" width="30%" >
			<el-form label-width="120px" :model="editForm" :rules="rules" ref="editForm">
				<el-form-item label="文章标题" prop="title">
					<el-input size="small" v-model="editForm.title" auto-complete="off" placeholder="请输入文章标题"></el-input>
				</el-form-item>
				<el-form-item label="文章内容" prop="body">
					<el-input size="small" v-model="editForm.body" auto-complete="off" placeholder="请输入文章内容"></el-input>
				</el-form-item>
			</el-form>
			<div slot="footer" class="dialog-footer">
				<el-button size="small" @click="closeDialog">取消</el-button>
				<el-button size="small" type="primary" class="title" @click="submitForm('editForm')">保存</el-button>
			</div>
		</el-dialog>


	</div>
</template>

<script>
	export default {
		data() {
			return {
				listData:[],//数据
				formInline: {//分页
					page: 1,
					rows: 10,
					title: ''//关键字
				},
				total: 0,
				title:'',
				editFormVisible:false,//弹出框不显示
				editForm:{//表单
					id:0,
					title:'',
					body:''
				},
				rules: {//验证
					title: [{
							required: true,
							message: '请输入标题',
							trigger: 'blur'
						},
						{
							min: 3,
							max: 5,
							message: '长度在 3 到 5 个字符',
							trigger: 'blur'
						}
					],
					body: [{
						required: true,
						message: '请输入内容',
						trigger: 'blur'
					}]
				}

			};
		},
		methods: {

			handleSizeChange(rows) {
				//页数发生改变
				this.formInline.page = 1;
				this.formInline.rows = rows;
				// console.log('当前页码大小:'+rows);
				this.search();
			},
			handleCurrentChange(page) {
				//页码发生改变
				this.formInline.page = page;
				// console.log('当前页码:'+page);
				this.search();
			},
			doSearch(params) {//为减少代码量,单独定义出来的方法
				let url = this.axios.urls.SYSTEM_ARTICLE_LIST;
				
				this.axios.post(url, params).then((response) => {
					console.log(response);
					this.listData = response.data.result;
					this.total = response.data.pageBean.total;
				}).catch(function(error) {
					console.log(error);
				});
			},
			search(){//运用分页
				this.doSearch(this.formInline);
			},
			closeDialog(){
				
			},
			submitForm(formName){
							this.$refs[formName].validate((valid) => {
								if (valid) {
									alert('添加成功!')
			
								} else {
									//console.log('error submit!!');
									alert('添加失败!')
									return false;
								}
							});
						},
			
			handleAdd(){
				this.editFormVisible=true;
			},
			handleEdit(index,row){
				
			},
			deleteUser(index,row){
				
			}
			
			},
			
		
		created() {//钩子函数
			this.doSearch({});
		}
	
	}
</script>

<style>

</style>

出现如下的情况:
在这里插入图片描述
改写Article.vue
在这里插入图片描述
现在排版正常了:
在这里插入图片描述
错误验证:
在这里插入图片描述
保存成功:
在这里插入图片描述

完成CRUD

改变Article.vue的方法

methods: {

			handleSizeChange(rows) {
				//页数发生改变
				this.formInline.page = 1;
				this.formInline.rows = rows;
				// console.log('当前页码大小:'+rows);
				this.search();
			},
			handleCurrentChange(page) {
				//页码发生改变
				this.formInline.page = page;
				// console.log('当前页码:'+page);
				this.search();
			},
			doSearch(params) {//为减少代码量,单独定义出来的方法
				let url = this.axios.urls.SYSTEM_ARTICLE_LIST;
				
				this.axios.post(url, params).then((response) => {
					console.log(response);
					this.listData = response.data.result;
					this.total = response.data.pageBean.total;
				}).catch(function(error) {
					console.log(error);
				});
			},
			search(){//运用分页
				this.doSearch(this.formInline);
			},
			closeDialog() {//关闭弹框
				this.clearData();
			},
			submitForm(formName){//提交表单,增或改
							this.$refs[formName].validate((valid) => {
								if (valid) {
									
									let url;
									if (this.editForm.id == 0) {
										
										//增
										url = this.axios.urls.SYSTEM_ARTICLE_ADD;
									} else {
										//改
										url = this.axios.urls.SYSTEM_ARTICLE_EDIT;
									}
									this.axios.post(url, this.editForm).then((response) => {
										//console.log(response);
										this.clearData();
										this.search();//刷新
									}).catch(function(error) {
										console.log(error);
									});
								} else {
									//console.log('error submit!!');
									alert('出错了!出错了!')
									return false;
								}
							});
						},
			
			handleAdd(){//添加
				this.editFormVisible=true;
				this.title = '添加文章';
			},
			handleEdit(index,row){//修改
				this.editForm.id = row.id;
				this.editForm.title = row.title;
				this.editForm.body = row.body
				this.editFormVisible = true;
				this.title = '编辑文章';

			},
			deleteUser(index,row){//删除
				let url = this.axios.urls.SYSTEM_ARTICLE_DEL;
				this.axios.post(url, {id:row.id}).then((response) => {
					console.log(response);
					this.clearData();
					this.search();
				}).catch(function(error) {
					console.log(error);
				});

			},
			clearData(){//清空表单,关闭弹框
				this.title = '';
				this.editForm.id = 0;
				this.editForm.title = '';
				this.editForm.body = '';
				this.editFormVisible = false;

			}
			
			}
			
为什么你的SiC MOSFET仿真不准?可能是离子注入的‘沟道效应’在捣鬼(Silvaco BCA模块详解) 本文深入分析了SiC MOSFET仿真中离子注入沟道效应的关键影响,揭示了Silvaco BCA模块在模拟SiC晶向和角度参数时的核心设置要点。通过详细解析晶圆偏切与注入角度的等效关系,提供优化MOSFET沟道区注入仿真的五步实战方法,帮助工程师将阈值电压仿真误差从26%降低到5%以内。 阅读详情

相关推荐

LM Studio Bionic:本地AI智能体从部署到实战完整指南

AI智能体作为能够自主规划、执行多步任务的人工智能系统,其核心原理在于结合大语言模型的推理能力与工具调用机制。通过状态保持和任务分解算法,智能体实现了从单次问答到持续协作的技术跃迁。在工程实践中,这种架构显著降低了复杂任务自动化的门槛,特别适用于数据敏感场景和定制化需求。以Tesla V100等专业硬件为例,本地部署能充分发挥其大显存优势,支持更高精度的模型量化格式。在实际应用层面,智能体可无缝集成到代码审查、文档生成等开发工作流中,而LM Studio Bionic通过统一界面整合了模型服务、任务规划器等

weixin_29053695的博客 647

SPA项目开发之表单验证与增删改功能实现

SPA项目开发之表单验证与增删改功能实现1. 前言2. 表单验证3. 增删改功能4. 效果实现 1. 前言 续前篇SPA项目开发之动态树+数据表格+分页,对表格数据进行一个增删改功能。 2. 表单验证 Form组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则, 并将Form-Item的prop属性设置为需校验的字段名即可 <!-- 编辑窗体 --> <el-dialog :title="title" :visible.sync="editFormVisi

Smootht的博客 297

BAPI_OUTB_DELIVERY_CHANGE扩展指南:利用EXTENSION2与SMOD_V50B0001实现自定义字段更新

本文详细解析了如何利用BAPI_OUTB_DELIVERY_CHANGE的EXTENSION2参数与增强点SMOD_V50B0001,在不修改标准代码的前提下,安全、标准地更新SAP交货单的自定义字段。通过清晰的步骤指南和实战代码示例,帮助开发者掌握通过增强字段实现定制化业务需求的完整流程与调试技巧。

fanta的博客 450

SPA项目开发--表单校验+增删改功能

一、表单校验 1.1表单组件 el-form 1.2通过点击新增/编辑将表单对应窗口弹出 1.3给表单设置规则 rules 1.4当表单提交时要校验规则 二、增删改功能实现 2.1保证编辑窗口的正常弹出 2.2表单校验通过后,调用后台数据接口完成新增功能

weixin_67450855的博客 642

记一次网络风暴/网络环路

环境: win10 x64 ,联想云教室,电子教室,华三交换机。 状况描述: 最开始开机,一直卡在PXE启动界面,进不去系统。电脑技术张工说,先开教师机后开学生机。因为学生机开机需要读取教师机的镜像。但是状况依旧。 开始排查网络,重启交换机后,发现陆续有几台电脑能登陆进系统桌面了,但很慢起码过了5分钟以上才能进去。 教师机一直都是正常的,然后我在教师机部署电子教室。技术说这电子 教室与云教室IP冲突。 (那之后我查了下这两款软件的PID和端口,所占端口不一样,那没冲突) 我说不可能吧,这套软件在

Nightwish5的博客 2864

Qt快速读取Excel文件

网上很多读取方式都是如下形式,太慢了,打开文件+读取文件要6s以上,实在是受不了! QAxObject excel("Excel.Application"); excel.setProperty("Visible", false); QAxObject *work_books = excel.querySubObject("WorkBooks"); work_boo...

c+c++的博客 2万+

SPA之表单验证+增删改查

文章目录课程目标1、表单验证2、增删改功能实现 课程目标 1、表单验证 :rules=“rules” 详情见饿了么官网 <!-- 编辑界面 --> <el-dialog :title="title" :visible.sync="editFormVisible" width="30%" @before-close="closeDialog"> <el...

尽力漂亮的博客 483

大模型时代必备技能:3种向量量化技术对比(PQ/AQ/RVQ)与选型指南

本文深入解析了大模型时代处理海量向量数据的关键技术——向量量化。通过对比Product Quantization (PQ)、Additive Quantization (AQ)和Residual Vector Quantization (RVQ)三种主流技术的核心原理、性能表现与适用场景,为工程师提供了从理论到实践的选型指南,旨在解决向量存储与检索的效率瓶颈,助力RAG等大模型应用高效落地。

silver的专栏 795

JavaScript 小实例 - 表单输入内容检测,对页面的增删改

JavaScript 小实例 - 表单输入内容检测,对页面的增删改 效果体验地址:https://xpwi.github.io/js/JavaScript01/jsForm.html 功能: 1.向页面写入数据 2.删除页面数据 + 删除提示【确实】才删除 3.获取表单输入的内容,并简单验证 4.打开一个新的窗口 <!DOCTYPE html> <html lang="en"...

weixin_30496431的博客 186

EBOM转MBOM实战:华为云数字工厂如何5步搞定BOM自动转换(含避坑指南)

本文详细解析了华为云数字工厂平台如何通过五步自动化流程实现EBOM到MBOM的高效转换,涵盖模型预配置、逻辑流编排、工艺属性注入等关键步骤,并提供了多工厂差异化配置、历史数据迁移等典型场景的避坑指南。该方案显著提升转换效率,降低差错率,助力企业实现数字化转型。

weixin_29215391的博客 267

SAP Joule Studio 能不能用来开发 skill:可以,但它开发的是 Joule 语境下的企业级 skill,而不是替代所有 SAP 开发技术的万能锤

SAP Joule Studio 专为开发Joule技能(Joule skills)而设计,这些技能是执行确定性单步业务动作的原子能力。它通过自然语言接口连接SAP和非SAP系统,适合处理边界清晰、可审计的任务(如创建工单、查询发票)。Joule技能作为会话式业务编排层,与ABAP、CAP等核心技术互补而非替代。开发支持低代码和专业代码两种方式,并具备企业级治理能力,但需要相应的BTP订阅和技术基础。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 199

spa项目开发之CRUD&表单验证&vue的增删改查

前言:即前三篇博客的基础上在进行开发,本篇是第四篇 spa项目开发之动态树功能&&右侧文章的分页查询功能 (2)spa项目开发之动态树功能&&右侧文章的分页查询功能 (1)SPA项目开发之登录注册 今日目标: 1,表单验证 2,增删改功能的实现 准备工作:在组件中对该表进行增删改查开发 四个与后台交互获取数据库中的数据 目标效果: 一,表单验证 一 编辑界面布局(把rules加到表单验证里面去) &...

m0_58525944的博客 704

高渗透率光伏接入配电网的电压越限与谐波治理:基于VSG构网型控制与SVG+APF联合补偿的Simulink仿真研究

本文针对高渗透率光伏接入配电网引发的电压越限和谐波畸变问题,提出了一种分层递进的综合治理方案。通过建立IEEE 33节点配电网的Simulink仿真模型,首先验证了传统跟网型控制下光伏渗透率提高导致的电压越上限(最高达1.08 p.u.)和系统谐波畸变严重(THD达8.72%)问题。进而提出:1)将部分光伏逆变器改造为构网型VSG控制,利用其无功调压能力与虚拟阻抗技术实现本地治理;2)在关键节点加装SVG+APF联合补偿装置进行全局动态无功补偿与谐波滤除。仿真结果表明,该方案能将节点电压控制在0.94-1.

huanghm88的专栏 576

(vue)spa项目开发之CRUD&表单验证&vue的增删改查

转载请标明出处:https://blog.youkuaiyun.com/men_ma/article/details/106847165. 本文出自 不怕报错 就怕不报错的小猿猿 的博客 (vue)spa项目开发之CRUD&表单验证&vue的增删改查前言课程目标目录及一些准备工作1.表单验证2.增删改查功能实现 前言 续上几篇博客(有先后顺序): 博客名称及链接 spa项目开发之登录注册(vue). SPA项目开发之首页导航+左侧菜单+mock.js模拟响应ajax请求+.

men_ma的博客 805

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

SPA项目表单验证&增删改查

补充:在表单中有的属性,在json数组中也要添加。2.表单效验通过后 调用后台数据接口完成新增功能。新增方法与修改方法窗体为同一个,修改传值。2.通过点击/新增/编辑将表单对应窗口弹出。1.出现表单组件 el-form。3.给表单这只规则 rules。代码演示(弹出框----表单)4.个表单提交是要效验规则。1.保证窗体正常弹出。

zsm030616的博客 239

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

SPA项目开发之CRUD+表单验证增删改查

1,表单验证 一 编辑界面布局(把rules加到表单验证里面去) <!-- 编辑界面 --> <el-dialog :title="title" :visible.sync="editFormVisible" width="30%" @click="closeDialog"> <el-form label-width="120px" :model="editForm" :rules="rules" ref="editForm">

m0_54067126的博客 220

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

SPA项目开发之CRUD增删改查+表单验证

目录 一,增加 1,增加窗体代码 2,定义窗体 3,校验表单 ①,将rules控件放入form表单 ②,定义规则 ③,调用校验规则 二,修改功能 1,区分新增和修改的窗体 2,数据回显 3,为新增窗体清空数据 ①清空数据的方法 ②,调用清空窗体的方法 4,数据交互 三,删除功能 定义删除的方法,根据id删除 article.vue完整代码如下 一,增加 1,增加窗体代码 一定要放在div里面 <!-- 编辑界面 --> <el-d...

小宝的宝呢的博客 1502

SPA项目开发之CRUD和表单验证

SPA项目开发之CRUD和表单验证 表单验证 Form组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则, 并将Form-Item的prop属性设置为需校验的字段名即可 <!-- 编辑界面 --> <el-dialog :title="title" :visible.sync="editFormVisible" width="30%" @click=...

weixin_45180919的博客 120

SPA项目开发之CRUD+表单验证

SPA项目开发之CRUD+表单验证 课程目标 1、表单验证 2、增删改功能实现 1.Vue的表单验证 Articles.vue 中的编辑界面: <!-- 编辑界面 visible.sync控制弹出窗口--> <el-dialog :title="title" :visible.sync="editFormVisible" width="30%"> <el-f...

xiaoyi215的博客 180

spa项目crud+表单验证

spa项目crud+表单验证1.表单验证2.增删改查添加修改删除 1.表单验证 Form组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则, 并将Form-Item的prop属性设置为需校验的字段名即可 <el-form-item label="活动名称" prop="name"> <el-form :model="ruleForm" :rules=...

weixin_45111741的博客 257

SPA项目开发之CRUD增删改查+表单验证,CSS的三种基础选择器

message: ‘删除成功’,});});},article.vue完整代码如下这是文章列表组件搜索筛选搜索添加列表。

2401_83974173的博客 1047

SPA项目开发之CRUD增删改查+表单验证(2)

rules表示表单规则,相当于正则// 校验表单rules: {title: [{message: ‘请输入活动名称’,},min: 3,max: 5,message: ‘长度在 3 到 5 个字符’,],body: [{message: ‘请选择文章内容’,}],message: ‘删除成功’,});});},article.vue完整代码如下这是文章列表组件搜索筛选。

java_dazhuzhu的博客 312
上一篇: 几个比较常用的Vue.js的全局API
下一篇: Vuex
water_java
博客等级 码龄7年 9粉丝 124原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值