vue.js实现的全选与全不选功能示例【基于elementui】


Posted in Javascript onDecember 03, 2018

本文实例讲述了vue.js实现的全选与全不选功能。分享给大家供大家参考,具体如下:

elementui是有checkbox组件,不过问题在于checkbox组件内只能嵌套简单的字符串,如果要嵌入标签怎么办?

首先渲染页面:

<el-checkbox v-model="checkAll" @change="handleCheckAllChange">全选</el-checkbox>
<tbody v-for="item in orderData">
 <tr>
  <td class="order-num" colspan="7">
   <el-checkbox v-model="item.checkModel" @change="handleCheckItemChange" style="vertical-align:top;margin-top:20px;"></el-checkbox>
   <div class="num">
    <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >订单号:{{item.orderNumber}}</a>
    <p>商户单号:{{item.shopNumber}}</p>
   </div>
  </td>
  <td class="order-action" colspan="2">
   <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >查看详情</a>-<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >备注</a>-<a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >加星</a>
  </td>
 </tr>
 <tr>
  <td>
   <div class="pic">
    <img :src=item.orderPic alt="">
   </div>
   <div class="info">
    <a href="javascript:;" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" rel="external nofollow" >{{item.name}}</a>
    <p>{{item.size}}</p>
    <p>商品来源:{{item.from}}</p>
   </div>
  </td>
  <td>{{item.number}}</td>
  <td>{{item.price}}</td>
  <td>-</td>
  <td>{{item.company}}</td>
  <td>
   <p>{{item.address}}</p>
   <p>({{item.phone}})</p>
  </td>
  <td>{{item.date}}<br />{{item.time}}</td>
  <td>{{item.state}}</td>
  <td>{{item.pay}}<br /><span v-if="item.postCost">(运费:{{item.postCost}})</span></td>
 </tr>
</tbody>

初始化data数据:

checkAll:false,
checkedAllShops:[],
checkItemData:[],
orderData:[
 {
  checkModel:false,
  orderNumber:'2017081618322542542',
  shopNumber:'2017081618322542542',
  orderPic:'../../../../static/images/realtimeprofile01.png',
  name:'【商城】贴轻松穴位艾灸贴',
  size:'5贴*盒',
  from:'本店商品',
  number:'10',
  price:'200.00',
  company:'蒂花之秀',
  address:'童话镇',
  phone:'12345678910',
  date:'2018-1-12',
  time:'09:30:00',
  state:'订单关闭',
  pay:'400.00',
  postCost:'10'
 },{
  checkModel:false,
  orderNumber:'2017081618322542542',
  shopNumber:'2017081618322542542',
  orderPic:'../../../../static/images/realtimeprofile01.png',
  name:'【商城】贴轻松穴位艾灸贴',
  size:'5贴*盒',
  from:'本店商品',
  number:'10',
  price:'200.00',
  company:'蒂花之秀',
  address:'童话镇',
  phone:'12345678910',
  date:'2018-1-12',
  time:'09:30:00',
  state:'订单关闭',
  pay:'400.00',
  postCost:'10.00'
 }
]

相关方法:

handleCheckAllChange(val){
 this.orderData.map((item,i)=>{
  item.checkModel = val;
 })
},
handleCheckItemChange(val){
 for(let i = 0,l = this.orderData.length;i < l;i ++){
  if(this.orderData[i].checkModel !== val){
   this.checkAll = false;
   return;
  }
 }
 this.checkAll = val;
}

css代码就不贴出来了,不好看,哈哈

感兴趣的朋友还可以使用本站如下在线工具测试运行效果:

在线HTML/CSS/JavaScript前端代码调试运行工具:
http://tools.3water.com/code/WebCodeRun

在线HTML/CSS/JavaScript代码运行工具:
http://tools.3water.com/code/HtmlJsRun

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
JavaScript中pop()方法的使用教程
Jun 09 Javascript
SWFObject基本用法实例分析
Jul 20 Javascript
使用coffeescript编写node.js项目的方法汇总
Aug 05 Javascript
多个js毫秒倒计时同时进行效果
Jan 05 Javascript
jQuery纵向导航菜单效果实现方法
Dec 19 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
Jan 22 Javascript
node.js连接MongoDB数据库的2种方法教程
May 17 Javascript
zTree获取当前节点的下一级子节点数实例
Sep 05 Javascript
简单谈谈关于Angular Cli打包的事
Sep 05 Javascript
js 开发之autocomplete=&quot;off&quot;在chrom中失效的解决办法
Sep 28 Javascript
微信小程序发送短信验证码完整实例
Jan 07 Javascript
ES2020让代码更优美的运算符 (?.) (??)
Jan 04 Javascript
创建Vue项目以及引入Iview的方法示例
Dec 03 #Javascript
利用Vue构造器创建Form组件的通用解决方法
Dec 03 #Javascript
swiper.js插件实现pc端文本上下滑动功能示例
Dec 03 #Javascript
微信小程序显示倒计时功能示例【测试可用】
Dec 03 #Javascript
从零开始实现Vue简单的Toast插件
Dec 03 #Javascript
使用NestJS开发Node.js应用的方法
Dec 03 #Javascript
写gulp遇到的ES6问题详解
Dec 03 #Javascript
You might like
PHP面向对象精要总结
2014/11/07 PHP
PHP将HTML转换成文本的实现代码
2015/01/21 PHP
javascript getElementsByName()的用法说明
2009/07/31 Javascript
js中document.getElementByid、document.all和document.layers区分介绍
2011/12/08 Javascript
快速解决jQuery与其他库冲突的方法介绍
2014/01/02 Javascript
基于jquery实现等比缩放图片
2014/12/03 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
2015/08/06 Javascript
基于jquery实现百度新闻导航菜单滑动动画
2016/03/15 Javascript
Javascript之面向对象--接口
2016/12/02 Javascript
jQuery正则验证注册页面经典实例
2017/06/10 jQuery
js阻止默认右键的下拉菜单方法
2018/01/02 Javascript
bootstrap table实现合并单元格效果
2018/12/24 Javascript
详解element-ui日期时间选择器的日期格式化问题
2019/04/08 Javascript
详谈Object.defineProperty 及实现数据双向绑定
2020/07/18 Javascript
js实现页面导航层级指示效果
2020/08/25 Javascript
Vue实现多页签组件
2021/01/14 Vue.js
python使用xauth方式登录饭否网然后发消息
2014/04/11 Python
python分割列表(list)的方法示例
2017/05/07 Python
python处理按钮消息的实例详解
2017/07/11 Python
python散点图实例之随机漫步
2018/08/27 Python
opencv实现图片模糊和锐化操作
2018/11/19 Python
Python读取excel指定列生成指定sql脚本的方法
2018/11/28 Python
Python提取特定时间段内数据的方法实例
2019/04/01 Python
python连接mysql有哪些方法
2020/06/24 Python
Flask缓存静态文件的具体方法
2020/08/02 Python
Python Selenium异常处理的实例分析
2021/02/28 Python
纯CSS3实现给头像加个光芒四射且旋转的背景动画效果
2014/05/07 HTML / CSS
洛杉矶生活休闲而精致的基础品牌:Mika Jaymes
2018/01/07 全球购物
美国围栏公司:Walpole Outdoors
2019/11/19 全球购物
EM Cosmetics官网:由彩妆大神Michelle Phan创办的独立品牌
2020/04/27 全球购物
华为慧通面试题
2012/09/11 面试题
职称自我鉴定
2013/10/15 职场文书
测控技术与仪器个人求职信范文
2013/12/30 职场文书
一篇文章带你学习Mybatis-Plus(新手入门)
2021/08/02 Java/Android
动态规划之使用备忘录来改进Javascript函数
2022/04/07 Javascript
python manim实现排序算法动画示例
2022/08/14 Python