Vue在HTML页面中的脚手架
<script src="assets/js/vue.js"></script>
<script src="assets/js/vue-resource.min.js"></script>
<script>
new Vue({
el:"#container123",
data:{
data:123,
name:"姓名",
password:"密码",
course:"课程",
pointer:-1,
alldata:false,
start:0,
end:7,
pageNow:1,
searchcon:null
},
mounted:function(){ this.$http.get("teacher_getAll.action").then(function(res){
console.log(res.data.data); this.data=res.data.data;
for(var i=0;i<this.data.length;i++){
this.data[i].checked=false;
}
console.log(this.data);
},function(){
alert("请求数据失败")
})
},
methods:{
dele:function(index){
if(confirm("确认删除ID为"+index+"的老师")){ this.$http.get("teacher_dele.action?id="+index).then(function(res){
this.$http.post("teacher_getSearch.action",{name:this.searchcon},{emulateJSON: true}).then(function(res){
console.log(res.data.data); this.data=res.data.data;
for(var i=0;i<this.data.length;i++){
this.data[i].checked=false;
}
console.log(this.data);
},function(){
alert("请求数据失败")
})
if(!res.data.success){
alert("删除失败")
} }
,function(){
alert("请求数据失败")
})
}
},
update:function(name,password,course,pointer){
this.pointer=pointer;
this.name=name;
this.password=password;
this.course=course;
},
search:function(){
this.$http.post("teacher_getSearch.action",{name:this.searchcon},{emulateJSON: true}).then(function(res){
console.log(res.data.data); this.data=res.data.data;
for(var i=0;i<this.data.length;i++){
this.data[i].checked=false;
}
console.log(this.data);
},function(){
alert("请求数据失败")
})
},
sure:function(index){
//
/*alert(index); alert(this.name);
alert(this.password);
alert(this.course);*/
this.$http.post("teacher_update.action",{name:this.name,password:this.password,course:this.course,id:index},{emulateJSON: true}).then(function(res){
this.$http.post("teacher_getSearch.action",{name:this.searchcon},{emulateJSON: true}).then(function(res){
console.log(res.data.data); this.data=res.data.data;
for(var i=0;i<this.data.length;i++){
this.data[i].checked=false;
}
console.log(this.data);
},function(){
alert("请求数据失败")
})
console.log(res.data.success);
if(!res.data.success){
alert("数据更新失败");
}else{
this.pointer=-1;
}
},function(){
alert("数据更新失败");
})
},
all:function(){ if(this.alldata){
for(var i=0;i<this.data.length;i++){
this.data[i].checked=true;
}
}else{
for(var i=0;i<this.data.length;i++){
this.data[i].checked=false;
} } }
}
})
<div class="content" >
<div class="card-box" >
<!-- Row start -->
<div class="am-g">
<div class="am-u-sm-12 am-u-md-6">
<div class="am-btn-toolbar">
<div class="am-btn-group am-btn-group-xs">
<button type="button" onclick="location.href='teacher_add.jsp'" class="am-btn am-btn-default"><span class="am-icon-plus"></span> 新增</button>
<button type="button" class="am-btn am-btn-default"><span class="am-icon-save"></span> 保存</button>
<button type="button" class="am-btn am-btn-default"><span class="am-icon-trash-o"></span> 删除</button>
</div>
</div>
</div> <div class="am-u-sm-12 am-u-md-3">
<div class="am-input-group am-input-group-sm">
<input type="text" class="am-form-field" v-model="searchcon">
<span class="am-input-group-btn">
<button @click="search" class="am-btn am-btn-default" type="button">搜索</button>
</span>
</div>
</div>
</div>
<!-- Row end --> <!-- Row start -->
<div class="am-g">
<div class="am-u-sm-12">
<form class="am-form" onsubmit="return false">
<table class="am-table am-table-striped am-table-hover table-main">
<thead>
<tr>
<th class="table-check"><input @click="all()" v-model="alldata" type="checkbox" /></th><th class="table-id" style="width:200px">ID</th><th style="width:150px" class="table-id">姓名</th><th style="width:150px" class="table-title">密码</th><th style="width:200px" class="table-title">课程</th><th class="table-set">操作</th>
</tr>
</thead>
<tbody>
<tr v-for="(val,index) in data">
<td><input type="checkbox" v-model="val.checked"/></td>
<td>{{val.id}}</td>
<td><span v-show="pointer!=val.id">{{val.name}}</span><input style="width:100px" v-show="pointer==val.id" v-model="name"></td>
<td><span v-show="pointer!=val.id">{{val.password}}</span><input style="width:100px" v-show="pointer==val.id" v-model="password"></td>
<td><span v-show="pointer!=val.id">{{val.course}}</span><input style="width:100px" v-show="pointer==val.id" v-model="course"></td> <td>
<div class="am-btn-toolbar">
<div class="am-btn-group am-btn-group-xs">
<button v-show="pointer!=val.id" @click="update(val.name,val.password,val.course,val.id)" class="am-btn am-btn-default am-btn-xs am-text-secondary"><span class="am-icon-pencil-square-o"></span> 编辑</button>
<button v-show="pointer==val.id" @click="sure(val.id)" class="am-btn am-btn-default am-btn-xs am-text-secondary"><span class="am-icon-pencil-square-o"></span> 确定</button>
<button onclick="window.clipboardData.setData('text','123')" class="am-btn am-btn-default am-btn-xs am-hide-sm-only"><span class="am-icon-copy"></span> 复制</button>
<button @click="dele(val.id)" class="am-btn am-btn-default am-btn-xs am-text-danger am-hide-sm-only"><span class="am-icon-trash-o"></span> 删除</button>
</div>
</div>
</td>
</tr> </tbody>
</table>
<div class="am-cf">
共 {{data.length}} 条记录
<div class="am-fr">
<ul class="am-pagination">
<li class="am-disabled"><a href="#">«</a></li>
<li class="am-active"><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li><a href="#">»</a></li>
</ul>
</div>
</div>
<hr />
<p>注:.....</p>
</form>
Vue在HTML页面中的脚手架的更多相关文章
- vue监听页面中的某个div的滚动事件,并判断滚动的位置
在开发中常常会遇到这样一个vue页面,页面分为左右两部分,左边是目录树,右边是一个类名为xq-box的div,在xq-box中多个div上下并列布局,每个div中的内容就对应着左边目录树中的相应节点, ...
- vue项目-打印页面中指定区域的内容(亲测有效!)
关于打印整个页面的,没什么好说的.今天我给大家分享一个打印指定区域的方法,你想打印哪里,就打印哪里! 我也是刚刚开始接触打印这一块功能的,然后当然是找度娘深入了解了一番啦,期间试了网上的各种方法,有的 ...
- 高性能流媒体服务器EasyDSS前端重构(一)-从零开始搭建 webpack + vue + AdminLTE 多页面脚手架
本文围绕着实现EasyDSS高性能流媒体服务器的前端框架来展开的,具体EasyDSS的相关信息可在:www.easydss.com 找到! EasyDSS 高性能流媒体服务器前端架构概述 EasyDS ...
- vue项目引入FastClick组件解决IOS系统下h5页面中的按钮点击延迟,连续点击无反应的问题
异常描述: ios系统手机中访问h5页面,按钮点击有延迟,连续点击卡顿.无反应. 异常原因: 这要追溯至 2007 年初.苹果公司在发布首款 iPhone 前夕,遇到一个问题:当时的网站都是为大屏幕设 ...
- Vue 动态控制页面中按钮是否显示和样式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- vue基于页面中按钮权限控制
main.js // 权限 /** 权限指令,对按钮权限的控制 **/ Vue.directive('allow', { bind: function(el, binding) { // 通过当前按钮 ...
- 在静态页面中使用 Vue.js
在静态页面中使用 Vue.js 不使用Node.js, NPM, Webpack 等, 在静态页中使用Vue.js. 包括路由, 单文件组件. 1. 创建index.html index.html做为 ...
- vue第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法)
第四单元(初识vue-在页面中直接引入vue框架-学习使用vue语法-vue的指令-介绍data用法-methods用法) #课程目标 了解 vue 框架的特点 掌握创建 vue 实例 掌握 data ...
- 在代码生成工具Database2Sharp中增加Vue&Element 工作流页面的快速生成
在我们基于框架开发系统的时候,往往对一些应用场景的页面对进行了归纳总结,因此对大多数情况下的页面呈现逻辑都做了清晰的分析,因此在我们基于框架的基础上,增量式开发业务功能的时候,能够事半功倍.代码生成工 ...
随机推荐
- servle 3.0 新特性之一 对上传表单的支持
1. 上传 * 上传对表单的要求: > method="post" > enctype="multipart/form-data",它的默认值是:a ...
- 设计线程安全的类 VS 发布线程安全的对象
一.设计线程安全的类 步骤: 找出构成对象状态的所有变量 找出约束状态变量的不变性条件 建立对象状态的并发访问策略 1.在现有的线程安全类中添加功能 (1)重用能减低工作量和提高正确性 (2)如果底层 ...
- ThreadLocal (三):为何TransmittableThreadLocal
一.示例 线程池内的线程并没有父子关系,所以不适合InheritableThreadLocal的使用场景 public class ThreadPoolInheritableThreadLocalDe ...
- ACM中使用 JAVA v2. 1
ACM中使用JAVA v2.1 严明超 (Blog:mingchaoyan.blogbus.com Email:mingchaoyan@gmail.com) 0.前 言 文前声明:本文只谈java用于 ...
- 关于android编程中service和activity的区别
一. 绝大部分情况下,Service的作用是用来“执行”后台的.耗时的.重要的任务,三者缺一不可,而最重要的原因是第三点:要执行重要的任务. 因为当一个进程启动了Service后,进程的优先级变高了, ...
- Excel 查找某一列中包含指定字符的单元格
网上查找相关内容,个人感觉是另一种形式的过滤喽.有的说用FIND,有的用高级筛选.我查找时如下: 1.新拉一列,标注公式“=ISNUMBER(FIND("宣",B2))”,然后拉至 ...
- WEB网页专业词汇 汇总
Accessibility 可访问性 accessor properties 存取器属性 addition 加法 aggregate 聚合 alphabetical order 字母表顺序 Anch ...
- Linux 函数库
概述 函数库其实就是函数,只不过是系统所调用的函数.这样说吧,我写了一个软件,所有的功能都需要我自己完成吗?其实是不需要的,因为很多功能是别人已经写好的,我只需要拿来用就好了.这些有独立功能并且可以被 ...
- PHP连接到mysql的方法--mysqli和PDO
php连接到mysql数据库,经典的方式就是使用mysql_connect(),具体代码如下: mysql_connect($db_host, $db_user, $db_pass) or die(m ...
- Dual Boot WINDOWS 10 and KALI LINUX Easily STEP BY STEP GUIDE截图
mark. kali安装:https://www.youtube.com/watch?v=KLj2yQPWZDk 删除无用分区:http://www.xitongcheng.com/jiaocheng ...