关于vue的列表图片选中打钩操作


Posted in Javascript onSeptember 09, 2020

首先 css,美化checkbox样式,这一段代码拿过去可以直接用

label {
 font-size: 25px;
 cursor: pointer;
 position: absolute;
 top: -10px;
 right: 0px;
 z-index: 150;
}
 
label i {
 font-size: 15px;
 font-style: normal;
 display: inline-block;
 width: 18px;
 border-radius: 15px;
 height: 18px;
 text-align: center;
 line-height: 18px;
 color: #fff;
 vertical-align: middle;
 margin: -2px 2px 1px 0px;
 border: #53c7f0 1px solid;
}
 
input[type="checkbox"],
input[type="radio"] {
 display: none;
 outline: none;
}
 
input[type="radio"]+i {
 border-radius: 7px;
}
 
input[type="checkbox"]:checked+i,
input[type="radio"]:checked+i {
 background: #fff;
 color: #53c7f0;
}

接着是内容部分,这里变量命名比较乱,但是效果都是通过变量控制的,主要思路是点击后,将一个id传入一个临时数组,再遍历这个临时数组,拿数组中的值与当前值对比,如果对比成功,那么就让选中的checkbox显示出来

相对的,如果想要提交,那么只需要将临时数组传进去就好了

<div class="t-recommed-r" v-for="(item,index) in list" :key="index">
  <p><span></span> {{ item.name }} <span></span></p>
  <ul>
   <li v-for="(val,key) in item.data" :key="key" @click="checkTab(val.id)">
   <label v-for="(v, k) in checkedList" :key="k" v-show="val.id === v">
    <input type="checkbox" :checked="val.id === v">
    <i>✓</i>
   </label>
   <a><img src="@/assets/images/null.png"><em>{{ val.name }}</em></a>
   </li>
  </ul>
  </div>

最后一步,js部分

data () {
 return {
  checkedList: [],
  list: []
 }
 },
methods: {
 checkTab (id) {
  let index = this.checkedList.indexOf(id)
  if (index === -1) {
  this.checkedList.push(id)
  } else {
  this.checkedList.splice(index, 1)
  }
 },
}
// 如果存在数组中,那么进行删除操作, 如果不存在,则放入数组中

补充知识:vue列表获取勾选的内容并打印

先将勾选的内容通过弹出层显示出来

showPrintData: function() {
 var id = this.checkedList[0].id;
 axios.post(this.$api.contentGet, { id: id }).then(res => {
 this.contentTxt = res.body.txt;
 this.dialogFormVisible=true;
 });
},

contentTxt: "",

dialogFormVisible: false,

<el-dialog :visible.sync="dialogFormVisible">
 <div ref="print" v-html="contentTxt">
 {{contentTxt}}
 </div>
 <div slot="footer" class="dialog-footer">
 <el-button type="primary" @click="printData()">打印</el-button>
 </div>
</el-dialog>

然后进行打印

printData: function() {
 this.$print(this.$refs.print);
},

说明:

vue框架使用是element

打印使用的插件地址:https://github.com/xyl66/vuePlugs_printjs

在main.js中进行注册

import Print from '@/plugs/print'

Vue.use(Print);

以上这篇关于vue的列表图片选中打钩操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery Flash/MP3/Video多媒体插件
Jan 18 Javascript
JSON 和 JavaScript eval使用说明
Jun 13 Javascript
jtable列中自定义button示例代码
Nov 21 Javascript
jquery获取css中的选择器(实例讲解)
Dec 02 Javascript
node.js中的fs.chownSync方法使用说明
Dec 16 Javascript
JavaScript设计模式之适配器模式介绍
Dec 28 Javascript
js实现人才网站职位选择功能的方法
Aug 14 Javascript
JS正则表达式判断有效数实例代码
Mar 13 Javascript
JavaScript订单操作小程序完整版
Jun 23 Javascript
JS实现数组的增删改查操作示例
Aug 29 Javascript
ES6模板字符串和标签模板的应用实例分析
Jun 25 Javascript
threejs太阳光与阴影效果实例代码
Apr 05 Javascript
JavaScript日期库date-fn.js使用方法解析
Sep 09 #Javascript
js实现简单抽奖功能
Nov 24 #Javascript
js实现贪吃蛇游戏 canvas绘制地图
Sep 09 #Javascript
Vue路由 重定向和别名的区别说明
Sep 09 #Javascript
JavaScript常用8种数组去重代码实例
Sep 09 #Javascript
Vue项目配置跨域访问和代理proxy设置方式
Sep 08 #Javascript
如何使用jQuery操作Cookies方法解析
Sep 08 #jQuery
You might like
PHP获取搜索引擎关键字来源的函数(支持百度和谷歌等搜索引擎)
2012/10/03 PHP
typecho插件编写教程(三):保存配置
2015/05/28 PHP
PHP设计模式之工厂模式(Factory Pattern)的讲解
2019/03/21 PHP
prototype 的说明 js类
2006/09/07 Javascript
认识延迟时间为0的setTimeout
2008/05/16 Javascript
JavaScript 继承详解(一)
2009/07/13 Javascript
js弹窗返回值详解(window.open方式)
2014/01/11 Javascript
借助JavaScript脚本判断浏览器Flash Player信息的方法
2014/07/09 Javascript
Javascript学习笔记之函数篇(四):arguments 对象
2014/11/23 Javascript
7个jQuery最佳实践
2016/01/12 Javascript
JS实现根据文件字节数返回文件大小的方法
2016/08/02 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图的组合双轴图效果示例【附demo源码下载】
2017/03/09 Javascript
socket.io学习教程之基础介绍(一)
2017/04/29 Javascript
jQuery实现的弹幕效果完整实例
2017/09/06 jQuery
详解webpack2异步加载套路
2018/09/14 Javascript
webpack4+react多页面架构的实现
2018/10/25 Javascript
node微信开发之获取access_token+自定义菜单
2019/03/17 Javascript
layui 上传插件 带预览 非自动上传功能的实例(非常实用)
2019/09/23 Javascript
python实现爬虫统计学校BBS男女比例(一)
2015/12/31 Python
Python安装使用命令行交互模块pexpect的基础教程
2016/05/12 Python
python2 与 python3 实现共存的方法
2018/07/12 Python
人工神经网络算法知识点总结
2019/06/11 Python
python PIL和CV对 图片的读取,显示,裁剪,保存实现方法
2019/08/07 Python
python图片指定区域替换img.paste函数的使用
2020/04/09 Python
python缩进长度是否统一
2020/08/02 Python
2020年10款优秀的Python第三方库,看看有你中意的吗?
2021/01/12 Python
利用纯CSS3实现动态的自行车特效源码
2017/01/20 HTML / CSS
用css3写出气球样式的示例代码
2017/09/11 HTML / CSS
英国床垫在线:Mattress Online
2016/12/07 全球购物
英国在线药房:Express Chemist
2019/03/28 全球购物
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
经济信息系毕业生自荐信
2014/06/02 职场文书
活动总结新闻稿
2014/08/30 职场文书
2015年八一建军节演讲稿
2015/03/19 职场文书
西游降魔篇观后感
2015/06/15 职场文书
奖学金发言稿(范文)
2019/08/21 职场文书