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 工作流页面的快速生成
在我们基于框架开发系统的时候,往往对一些应用场景的页面对进行了归纳总结,因此对大多数情况下的页面呈现逻辑都做了清晰的分析,因此在我们基于框架的基础上,增量式开发业务功能的时候,能够事半功倍.代码生成工 ...
随机推荐
- Andrew Ng机器学习编程作业: Linear Regression
编程作业有两个文件 1.machine-learning-live-scripts(此为脚本文件方便作业) 2.machine-learning-ex1(此为作业文件) 将这两个文件解压拖入matla ...
- LeNet5
Lecun Y, Bottou L, Bengio Y, et al. Gradient-based learning applied to document recognition[J]. Proc ...
- php mysqli扩展库之预处理操作
分享下php使用mysqli扩展库进行预处理操作的二个例子,有意研究mysqli用法的朋友,可以参考学习下,一定会有所帮助的. 例1.使用mysqli扩展库的预处理技术 mysqli stmt 向数据 ...
- Simple Tips for Collection in Python
I believe that the following Python code is really not hard to understand. But I think we should use ...
- Linux基础系列:常用命令(2)
作业一: 1) 新建用户natasha,uid为1000,gid为555,备注信息为“master” groupadd -g 555 natasha useradd -u 1000 -g 555 -c ...
- 深入浅出Node.js(上)
(一):什么是Node.js Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟 ...
- iOS Xcode 8 快捷键 (注释 失效 处理)
在升级后,好用的VVDocumment 插件不能用了.(但是苹果这次内置了好多好用的插件,也有自己的注释功能了 AddDocumentation) 上网上有查到 传播很广泛的一条信息 "这个 ...
- css系列(4)简介
本节用来简单介绍css. (1)css: CSS 指层叠样式表 (Cascading Style Sheets): 功能以及作用:1.样式定义如何显示 HTML 元素; 2.样式通常存 ...
- Vue.js学习笔记 第八篇 组件
全局注册组件 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <ti ...
- SpringBoot Mybatis keyProperty和useGeneratedKeys的作用
在使用mybatis时,常常会出现这种需求: 当主键是自增的情况下,添加一条记录的同时,其主键是不能被使用的(为空),但是有时我们需要该主键,这时我们该如何处理呢?这时我们只需要在其对应xml中加入以 ...