vue 增加删除和修改操作

代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="/axios.min.js">
</script>
<script type="text/javascript" src="/vue.min.js">
</script>
<script type="text/javascript" src="/jquery-3.2.1.js">
</script>
</head>
<body>
	<div id="dali">
		<div class="mb">
			<table>
				<input type="hidden" v-model="empModel.empno">
				<tr>
					<td>
						姓名:<input type="text" v-model="empModel.ename">
					</td>
				</tr>
				<tr>
					<td>
						工作:<input type="text" v-model="empModel.job">
					</td>
				</tr>
				<tr>
					<td>
						工资:<input type="text" v-model="empModel.sal">
					</td>
				</tr>
				<tr>
					<td>
						部门:<select v-model="empModel.dno">
							<option v-for="se in list2" :value="se.deptno">{{se.dname}}</option>
						</select>
					</td>
				</tr>
				<tr>
					<td>
						<input type="button" value="提交" v-on:click="tijiao()">
						<input type="button" value="取消" v-on:click="qu()">
					</td>
				</tr>
			</table>
		</div>
		<input type="button" value="添加" v-on:click="toadd()"> 
		<table border="1" cellspacing="0">
			<tr>
				<td>序号</td>
				<td>姓名</td>
				<td>工作</td>
				<td>工资</td>
				<td>部门名称</td>
				<td>部门地址</td>
				<td>操作</td>
			</tr>
			<tr v-for="adata in list1">
				<td>{{adata.empno}}</td>
				<td>{{adata.ename}}</td>
				<td>{{adata.job}}</td>
				<td>{{adata.sal}}</td>
				<td>{{adata.dname}}</td>
				<td>{{adata.loc}}</td>
				<td>
					<input type="button" value="修改" v-on:click="toupdate(adata)">
					<input type="button" value="删除" v-on:click="todel(adata.empno)">
				</td>
			</tr>
			 <tr style="text-align: center;">
				<td colspan="10">
					<input type="button" v-on:click="getlist(pageNum-1)" value="上一页">
					{{pageNum}}/{{pages}}
					<input type="button" v-on:click="getlist(pageNum+1)" value="下一页">
				</td>
			</tr>
		</table>
	</div>
</body>
<script type="text/javascript">
	var vue=new Vue({
		el:"#dali",
		data:{
			empModel:[],
			list2:[],//部门信息
			list1:[],//员工信息
			pageNum:1,
			pages:0,
		},
		mounted:function(){
			$(".mb").hide();
			axios.get("/selectemp").then(function(response){
				vue.list1=response.data.list;
				vue.pageNum=response.data.pageNum;
				vue.pages=response.data.pages;
			})
			axios.get("/selectdept").then(function(response){
				vue.list2=response.data;
			})
		},
		methods:{
			getlist:function(pageNum){
				axios.get("/selectemp?pageNum="+pageNum).then(function(response){
					vue.list1=response.data.list;
					vue.pageNum=response.data.pageNum;
					vue.pages=response.data.pages;
				})
			},
			toadd:function(){
				vue.empModel={empno:0};
				$(".mb").show();
			},
			qu:function(){
				$(".mb").hide();
			},
			tijiao:function(){
				console.log("444:"+vue.empModel.dno);
				var url="../addemp";
				if(vue.empModel.empno!=0){
					url="../updateemp";
				}
				$.get(url,vue.empModel,function(res){
					console.log("操作:"+res);
					if(res=='1'){
						alert("操作成功!");
						location.href="../tolist";
					}else{
						alert("操作失败!");
					}
				})
			},
			toupdate:function(thedata){
				vue.empModel=thedata;
				$(".mb").show();
			},
			todel:function(empno){
				axios.post("/del?empno="+empno).then(function(res){
					console.log(res);
					if(res.data=='1'){
						alert("删除成功!");
						location.href="../tolist";
					}else{
						alert("删除失败!");
					}
				})
			}
		}
	})
</script>
</html>

首先绑定Dom组件:
在这里插入图片描述
在这里插入图片描述
div的id为dali
vue里面绑定就是el="#dali"

1.列表
定义接收列表的集合:
在这里插入图片描述
预加载函数获取集合:
在这里插入图片描述
因为我用的pageInfo所以获取的时候在response.data后面加了.list意思就是获取pageInfo的list集合 然后存进list1里面

遍历集合:
在这里插入图片描述
把存进list1里面的数据遍历 v-for相当于foreach循环 adata定义的对象 list1是之前存进的集合
效果如下
在这里插入图片描述
2.添加

添加和修改共用模块:
在这里插入图片描述
定义类 之后方便调用

添加按钮:
在这里插入图片描述
vue里data定义empModel存取添加或修改的对象
在这里插入图片描述
点击按钮进入函数:
在这里插入图片描述

必须在方法里面:
在methods:{
toadd:function(){
vue.empModel={empno:0};
$(".mb").show();
}
}
vue.empModel={empno:0};
赋值主键是0

$(".mb").show();
模板显示

在这里插入图片描述

点击提交 触发v-on:click事件
进入函数:
在这里插入图片描述
判断之前的主键是否为0
为0的话路径就变成了添加,不为0就是之后的修改操作

3.修改点击触发函数
在这里插入图片描述
在这里插入图片描述
显示模板
把列表里传参的值赋值给对象,模板调用对象回显操作
在这里插入图片描述
效果如下
在这里插入图片描述
点击提交 还是进入之前提交的函数里
在这里插入图片描述
判断主键不为0 因为数据修改回显的时候主键有值
所以地址就定义为修改
调用修改的后台就行了

4.删除
在这里插入图片描述
点击按钮
调用删除函数传主键参数
在这里插入图片描述
调用后台传主键 后台根据主键的值进行删除操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值