vue.js带复选框表单的增删改查
近段时间由于公司项目要求,前端开始使用VUE框架进行开发,最近刚开始学习,做了一个表单的增删改查,和大家分享一下。

页面模型代码设计如下
<template>
<div id="navi_108_page">
<i-button type="info" @click="adds">添加类型</i-button>
<i-button type="warning" @click="modify">修改类型</i-button>
<i-button type="error" @click="remv">删除类型</i-button>
<Table :columns="columns1" :data="msg" @on-select="tableSelect" @on-selection-change="onchange">
<Button @click="handleSelectAll(true)">Set all selected</Button>
<Button @click="handleSelectAll(false)">Cancel all selected</Button>
</Table>
<Modal
v-model="modal1"
title="添加类型"
@on-ok="ok1"
@on-cancel="cancel1">
<Input v-model="value1" placeholder="请输入保密责任类型" style="width: 300px" />
</Modal>
<Modal
v-model="modal2"
title="修改类型"
@on-ok="ok2"
@on-cancel="cancel2">
<Input v-model="value2" style="width: 300px" />
</Modal>
</div>
</template>
事件方法如下:
<script>
import axios from 'axios'
export default {
components: {},
data() {
return {
modal1: false,
modal2: false,
value1:"",
value2:"",
columns1: [
{
type: 'selection',
width: 60,
align: 'center'
},
{
title: '编号',
width:100,
key: 'id'
},
{
title: '名称',
key: 'name'
}
],
//声明一个data,用来存储服务返回的数据值
msg: [],
se:[],
se2:[] }
},
methods: {
onchange(selection){
this.se=selection;
},
tableSelect(selection,row){
console.log(selection);
console.log(row);
this.se=selection;
this.se2=row;
console.log("~~~~~~~~~~~~~~~~~~~~~~~~~~~~`");
},
querytable(){
let _this = this;
axios.post(this.$store.state.globalUrl.server+"/BmProject/bmzrt/list2")//post也可以改成get,但需要对应服务端的请求方法
.then(function (response) {
//将返回的数据存入页面中声明的data中
console.log("获取数据成功");
console.log(response.data.data);
_this.msg = response.data.data;
})
.catch(function (error) {
alert(error);
});
},
handleSelectAll (status) {
this.$refs.selection.selectAll(status);
},
adds(){
this.modal1=true;
},
modify(){
if(this.se.length==1){
this.modal2=true;
console.log(this.se[0].name);
this.value2=this.se[0].name;
}else{
this.$Message.info("请选择一条唯一数据!")
}
},
remv(){
console.log("------------------------");
let _this = this;
console.log(this.se);
console.log(this.se2);
let ids=[];
for(let a of this.se){
ids.push(a.id);
}
axios.post(this.$store.state.globalUrl.server+"/BmProject/bmzrt/Delete",{id:ids})//post也可以改成get,但需要对应服务端的请求方法
.then(function (response) {
//将返回的数据存入页面中声明的data中
console.log("获取数据成功");
_this.querytable();
})
.catch(function (error) {
alert(error);
});
},
ok1 () {
let a=this.value1;
let _this = this;
axios.post(this.$store.state.globalUrl.server+"/BmProject/bmzrt/AddType",{name:a})//post也可以改成get,但需要对应服务端的请求方法
.then(function (response) {
//将返回的数据存入页面中声明的data中
console.log("添加成功");
_this.querytable();
})
.catch(function (error) {
alert(error);
});
}, cancel1 () {
this.$Message.info('Clicked cancel');
},
ok2 () {
let _this = this;
axios.post(this.$store.state.globalUrl.server+"/BmProject/bmzrt/Update",{id:this.se[0].id,name:this.value2})//post也可以改成get,但需要对应服务端的请求方法
.then(function (response) {
//将返回的数据存入页面中声明的data中
console.log("修改成功");
_this.querytable();
})
.catch(function (error) {
alert(error);
});
},
cancel2 () {
this.$Message.info('Clicked cancel');
} }, mounted() {
//当页面加载的时候执行
this.querytable();
}
}
</script>
实现效果:
修改:

可以实现批量删除。
vue.js带复选框表单的增删改查的更多相关文章
- django-orm框架表单的增删改查
08.14自我总结 django-orm框架 一.orm基本配置 1.创建django项目 命令行:cmd先去到django创建目录,然后输入django-admin startproject dja ...
- AppBox实战: 如何实现一对多表单的增删改查
本篇通过完整示例介绍如何实现一对多关系表单的相应服务及视图. 一.准备数据结构 示例所采用的数据结构为"物资需求"一对多"物资清单",通过IDE的实体设 ...
- jquery完成带复选框的表格行高亮显示
jquery完成带复选框的表格行高亮显示 通过jquery技术来操作表格是件简单的事,通过jquery的语法,可以很轻松的完成表格的隔行换色,悬浮高亮,在实际的应用中可能会出现表格中带复选框的,删除时 ...
- html+css+js实现复选框全选与反选
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- js实现复选框的全选、全不选和反选
js实现复选框的全选.全不选和反选 主要是用遍历的方法查找元素,然后通过改变checked的属性来选择,为true则是选中状态,为false则是未选状态 实现代码 <!DOCTYPE html& ...
- 雷林鹏分享:jQuery EasyUI 树形菜单 - 创建带复选框的树形菜单
jQuery EasyUI 树形菜单 - 创建带复选框的树形菜单 easyui 的树(Tree)插件允许您创建一个复选框树.如果您点击一个节点的复选框,这个点击的节点信息将向上和向下继承.例如:点击 ...
- js input复选框选中父级同时子级也选中
js实现复选框选中父级元素子级元素也选中,没有子级元素选中父级也不选中的效果 HTML <tr> <td> <label> <input name=" ...
- js操作复选框 复选框
//复选框点击事件 function checkAll(){ let tp=$("#tp").val(); let all=$("input[name='id']&quo ...
- js实现复选框全选/全不选/反选
js实现复选框全选/全不选/反选 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...
随机推荐
- 进程以及进程通信(IPC)类型
这里用我有限的知识来解释同时参考了一些其他博主的子类,希望能给与一部分入门的朋友一个清晰的理解,有问题之处还请指出 首先简单谈一下什么是进程? 答:进程是装入内存运行的程序段,是许多的系统对象拥有权的 ...
- 【java自定义注解1】java自定义注解-属性
关于自定义注解,以前项目种应用的不多,最近看新项目过程中发现了挺多自定义注解相关内容,使用起来比较巧妙,于是 总结了两种方式,记录如下: 第一种:结合反射进行属性注入,代码如下: 1.定义一个注解: ...
- Linux/windows com串口 java 接收数据 并解析 web程序
1.首先应公司要求再 com 口本来使用 .net 由于 .net 适用 linux 太麻烦 改为java 准备工作 准备 RXTXconmm.jar(版本很重要) 因为版本问题我搞了一天. 主要讲述 ...
- wireshark数据包分析实战 第一章
1,数据包分析工具:tcpdump.wireshark.前者是命令行的,后者是图形界面的. 分析过程:收集数据.转换数据(二进制数据转换为可读形式).分析数据.tcpdump不提供分析数据,只将最原始 ...
- Dungeon Master POJ - 2251(bfs)
对于3维的,可以用结构体来储存,详细见下列代码. 样例可以过,不过能不能ac还不知道,疑似poj炸了, #include<iostream> #include<cstdio> ...
- Codeforces Gym100502H:Clock Pictures(KMP算法)
http://codeforces.com/gym/100502/attachments 题意:有两个时钟上面有n个指针,给出的数字代表指针的角度.问能否在某一时刻使得两个时钟的指针重合. 思路:容易 ...
- 【Aizu - 0118】Property Distribution
-->Property Distribution 原文是日语,算了算了,直接上我大中华母语吧 Descriptions: 在H * W的矩形果园里有苹果.梨.蜜柑三种果树, 相邻(上下左右)的 ...
- ElasticStack学习(五):ElasticSearch索引与分词
一.正排索引与倒排索引 1.什么是正排索引呢? 以一本书为例,一般在书的开始都会有书的目录,目录里面列举了一本书有哪些章节,大概有哪些内容,以及所对应的页码数.这样,我们在查找一些内容时,就可以通过目 ...
- 关于在使用scrapy-redis分布式踩过的那些坑:
自己的案列:win7上安装ubuntu (win7作为slaver,ubuntu作为master ) 修改配置文件redis.conf 1)打开配置文件把下面对应的注释掉 # bind 127.0.0 ...
- Java连载5-标识符、关键字和字面值
一.标识符 1.标识符定义:在java源程序中凡是可以自己命名的单词 2.标识符可以标识什么元素? (1)类名(2)方法名(3)变量名(4)接口名(5)常量名 等等 3.标识符的命名要求 (1)一个合 ...