利用vue.js实现被选中状态的改变方法


Posted in Javascript onFebruary 08, 2018

在使用原型实现使不选中状态改变之后,接触到vue,就想着能不能使用vue再把功能实现一边,在上篇中的页面并没有动态实现页面,所有的数据也都是直接写在html中。而使用vue之后,已经能够实现页面根据数据的多少动态生成。而且代码量也大幅度减少。

html部分的代码:

<div data-role="page " class="page "> 
 <div class="center " id="app"> 
 <div class="group "> 
 <ul> 
 <li v-for = "todo in todos "> 
  <div class="groupheader "> 
  <div class="Gheadertext ">{{todo.groupheader}}</div> 
  </div> 
  <div class = "groupbody "> 
  <ul class="list "> 
  <li v-for="cell in todo.groupbody" v-on:click="exchange($event)" class="groupcell"> 
  <div class="celltext"> 
   {{ cell.text }} 
  </div> 
  <img class="selectimg" src="img/select.png "> 
  </li> 
  </ul> 
  </div> 
  </li> 
 </ul> 
 </div> 
 </div> 
</div>

数据代码:

var datas = { 
 todos :[ 
 { 
 groupheader : 'MB3101', 
 groupbody:[ 
  { text: '调整不当'}, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
 ] 
 }, 
 { 
 groupheader : 'MB3102', 
 groupbody:[ 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
 ] 
 }, 
 { 
 groupheader : 'MB3103', 
 groupbody:[ 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
  { text: '调整不当' }, 
  { text: '光电开关损坏' }, 
  { text: '镜面积灰' }, 
 ] 
 } 
 ] 
}

js部分的代码:

new Vue({ 
 el: '#app', 
 data:datas, 
 methods:{ 
 exchange:function(event){ 
  //获取被点击的元素对象 
  var a = event.target; 
  //获取被点击元素中的子元素<img> 
  var cellimg = a.getElementsByTagName("img")[0]; 
  if(a.className == "groupcell") { 
  a.className = "selectcell"; 
  cellimg.style.display = "block"; 
 } 
 else if(a.className == "selectcell") { 
  a.className = "groupcell"; 
  cellimg.style.display = "none"; 
 } 
 } 
 } 
})

效果如图所示:

利用vue.js实现被选中状态的改变方法

以上这篇利用vue.js实现被选中状态的改变方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
捕获关闭窗口的脚本
Jan 10 Javascript
神奇的7个jQuery 3D插件整理
Jan 06 Javascript
jquery validation验证身份证号,护照,电话号码,email(实例代码)
Nov 06 Javascript
iframe中子父类窗口调用JS的方法及注意事项
Aug 25 Javascript
AngularJS实现页面定时刷新
Mar 14 Javascript
详解在AngularJS的controller外部直接获取$scope
Jun 02 Javascript
jquery图片预览插件实现方法详解
Jul 18 jQuery
vue2.0项目集成Cesium的实现方法
Jul 30 Javascript
node命令行工具之实现项目工程自动初始化的标准流程
Aug 12 Javascript
微信小程序登录时如何获取input框中的内容
Dec 04 Javascript
Angular之jwt令牌身份验证的实现
Feb 14 Javascript
详细分析vue表单数据的绑定
Jul 20 Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
Feb 08 #Javascript
vue绑定的点击事件阻止冒泡的实例
Feb 08 #Javascript
Vue.js 点击按钮显示/隐藏内容的实例代码
Feb 08 #Javascript
vue中改变选中当前项的显示隐藏或者状态的实现方法
Feb 08 #Javascript
Ionic学习日记实现验证码倒计时
Feb 08 #Javascript
vue父组件点击触发子组件事件的实例讲解
Feb 08 #Javascript
vue中实现在外部调用methods的方法(推荐)
Feb 08 #Javascript
You might like
火影忍者:这才是千手柱间和扉间的真正死因,角都就比较搞笑了!
2020/03/10 日漫
国王的咖啡这么大来头,名字的由来是什么
2021/03/03 咖啡文化
浅析Prototype的模板类 Template
2011/12/07 Javascript
鼠标拖拽移动子窗体的JS实现
2014/02/25 Javascript
JavaScript事件委托技术实例分析
2015/02/06 Javascript
javascript相关事件的几个概念
2015/05/21 Javascript
JQuery菜单效果的两个实例讲解(3)
2015/09/17 Javascript
详解JavaScript中的构造器Constructor模式
2016/01/14 Javascript
深入浅析JavaScript中的constructor
2016/04/19 Javascript
jquery 抽奖小程序实现代码
2016/10/12 Javascript
微信小程序--onShareAppMessage分享参数用处(页面分享)
2017/04/18 Javascript
bootstrap可编辑下拉框jquery.editable-select
2017/10/12 jQuery
浅谈Vue2.0父子组件间事件派发机制
2018/01/08 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
前端axios下载excel文件(二进制)的处理方法
2018/07/31 Javascript
animate.css在vue项目中的使用教程
2018/08/05 Javascript
Javascript之高级数组API的使用实例
2019/03/08 Javascript
Vue.js组件通信之自定义事件详解
2019/10/19 Javascript
详解Vue 的异常处理机制
2020/11/30 Vue.js
python比较2个xml内容的方法
2015/05/11 Python
解决Python出现_warn_unsafe_extraction问题的方法
2016/03/24 Python
python正则表达式re之compile函数解析
2017/10/25 Python
Python常见内置高效率函数用法示例
2018/07/31 Python
Win10+GPU版Pytorch1.1安装的安装步骤
2019/09/27 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
使用pandas库对csv文件进行筛选保存
2020/05/25 Python
Kears 使用:通过回调函数保存最佳准确率下的模型操作
2020/06/17 Python
如何用python实现一个HTTP连接池
2021/01/14 Python
英国乐购杂货:Tesco Groceries
2018/11/29 全球购物
生产车间主任的个人自我鉴定
2013/10/25 职场文书
结婚典礼证婚词
2014/01/08 职场文书
初中英语教学反思
2014/01/25 职场文书
餐饮投资计划书
2014/04/25 职场文书
团日活动总结书
2014/05/08 职场文书
2016年“11.11”光棍节活动总结
2016/04/05 职场文书
Django框架中模型的用法
2022/06/10 Python