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 Cookie读写删除操作的函数
Mar 02 Javascript
Javascript中神奇的this
Jan 20 Javascript
对jQuary选择器的全面总结
Jun 20 Javascript
JS 对java返回的json格式的数据处理方法
Dec 05 Javascript
canvas 实现中国象棋
Feb 17 Javascript
jQuery validate 验证radio实例
Mar 01 Javascript
在vue-cli中组件通信的方法
Dec 16 Javascript
js判断文件类型大小并给出提示的实现方法
Jan 03 Javascript
在vue中给列表中的奇数行添加class的实现方法
Sep 05 Javascript
如何基于vue-cli3.0构建功能完善的移动端架子
Apr 24 Javascript
在 Vue 应用中使用 Netlify 表单功能的方法详解
Jun 03 Javascript
Nuxt.js nuxt-link与router-link的区别说明
Nov 06 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中的CMS的涵义
2007/03/11 PHP
php与paypal整合方法
2010/11/28 PHP
wamp安装后自定义配置的方法
2014/08/23 PHP
php实现统计二进制中1的个数算法示例
2018/01/23 PHP
doctype后如何获得body.clientHeight的方法
2007/07/11 Javascript
jQuery中绑定事件的命名空间详解
2011/04/05 Javascript
javascript分页代码实例分享(js分页)
2013/12/13 Javascript
js中小数转换整数的方法
2014/01/26 Javascript
js判断undefined类型示例代码
2014/02/10 Javascript
详解jQuery中的元素的属性和相关操作
2015/08/14 Javascript
解决JavaScript数字精度丢失问题的方法
2015/12/03 Javascript
jQuery.Validate表单验证插件的使用示例详解
2017/01/04 Javascript
超简单的Vue.js环境搭建教程
2017/03/17 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
2017/06/01 jQuery
详解vue数据渲染出现闪烁问题
2017/06/29 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
Vue组件模板形式实现对象数组数据循环为树形结构(实例代码)
2017/07/31 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
解决Vue2.x父组件与子组件之间的双向绑定问题
2018/03/06 Javascript
从零开始搭建webpack+react开发环境的详细步骤
2018/05/18 Javascript
微信小程序实现列表页的点赞和取消点赞功能
2018/11/02 Javascript
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
layui 地区三级联动 form select 渲染的实例
2019/09/27 Javascript
[47:48]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第三局
2016/02/28 DOTA
在Python中实现shuffle给列表洗牌
2018/11/08 Python
在python中list作函数形参,防止被实参修改的实现方法
2020/06/05 Python
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
《数星星的孩子》教学反思
2014/04/11 职场文书
2014五年级班主任工作总结
2014/12/05 职场文书
2014企业年终工作总结
2014/12/23 职场文书
公司搬迁通知
2015/04/20 职场文书
关于法制教育的宣传语
2015/07/13 职场文书
小学大队干部竞选稿
2015/11/20 职场文书
民事纠纷协议书
2016/03/23 职场文书
2016年学校十一国庆节活动总结
2016/04/01 职场文书
zabbix agent2 监控oracle数据库的方法
2021/05/13 Oracle