位置: IT常识 - 正文

给饿了么Radio 单选框添加点击事件(vue2)(饿了么指定单)

编辑:rootadmin
给饿了么Radio 单选框添加点击事件(vue2) 前言

推荐整理分享给饿了么Radio 单选框添加点击事件(vue2)(饿了么指定单),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:饿了么单聊,饿了么指定单,饿了么怎么设置单量,饿了么接单提示音怎么设置,饿了么接单提示音怎么设置,饿了么指定单,饿了么单聊,饿了么单聊,内容如对您有帮助,希望把文章链接给更多的朋友!

最近有一个这样的需求,当点击不合格时打开一个弹窗进行不合格数据的录入。问题点在于当你想对不合格数据进行修改时,点击不合格是没有反应的;因为Radio 单选框只提供了一个change 事件

解决

这里说明一下,项目是vue2的项目,写这个demo是vue3的项目。但是两者的情况有些不一样。

问题1

vue2

<el-radio-group v-model="result"> <el-radio :label="0" @click.native="radioClick">不合格</el-radio> <el-radio :label="1">合格</el-radio></el-radio-group>

vue3

<el-radio-group v-model="result"> <el-radio :label="0" @click="radioClick">不合格</el-radio> <el-radio :label="1">合格</el-radio></el-radio-group>

在这里也发现了我的一个误解,@click 本质是一个自定义事件,只是与原生的点击事件功能上是一致的。 在vue2中有这样一句话 所以在vue2中直接@click是不生效的,因为Radio 单选框没有提供这样的事件;但是加上.native修饰符后这就是原生事件了,因此点击事件会生效。

在vue3中直接使用@click生效是因为vue3中移除了.native修饰符,@click默认就是原生的点击事件

问题2给饿了么Radio 单选框添加点击事件(vue2)(饿了么指定单)

点击事件解决了,但是该事件每次都会被触发两次。原因是因为el-radio被封装了好几层,根元素不是input,解决是在后面添加prevent

//vue2 <el-radio :label="0" @click.native.prevent="radioClick">不合格</el-radio> //vue3 <el-radio :label="0" @click.prevent="radioClick">不合格</el-radio>

至于为什么使用prevent可以解决这个问题,暂时没有找到原因

问题3

点击问题解决了,触发两次解决了,但是加上prevent后,单选框是无法被选中的。 解决:手动进行赋值

const radioClick = () => { result.value = 0; console.log('点击了', result.value);};

最终方案

看上面的动图其实可以看到还是有点小问题的,手动赋值后选中状态多了一圈,要在旁边空白地方点击一下才能变成正常的选中状态。如果不介意的话,这样就可以了,比较很简单。

还有一种解决方案,指令(yyds)

vue2

directives: { radioClick: { bind(el,binding) { // console.log(el); console.log(el.getElementsByClassName('el-radio__original')[0].getAttribute('value')); if(el.getElementsByClassName('el-radio__original')[0].getAttribute('value') == 2) { el.getElementsByClassName('el-radio__original')[0].addEventListener('click',() => { console.log('点击了',binding.value); }); } } } },

vue3

const vRadioClick = { mounted: (el, binding) => { if (el.getElementsByClassName('el-radio__original')[0].getAttribute('value') == 0) { el.getElementsByClassName('el-radio__original')[0].addEventListener('click', () => { console.log('点击了', binding.value); }); } }};

补充

本来以为上面就解决了,原来小丑竟然是自己。在指令中是无法获取到this 的,查了下需要借助指令的第三个参数

vnode.context 就是我们需要的 this

本文链接地址:https://www.jiuchutong.com/zhishi/296043.html 转载请保留说明!

上一篇:ieee下载文献的方法(ieee下载论文)

下一篇:【微信小程序】WXSS和全局、页面配置(微信小程序制作)

  • 微信营销推广方法12种(微信营销推广方法和手段有哪些)

    微信营销推广方法12种(微信营销推广方法和手段有哪些)

  • 苹果13mini分辨率多少(苹果13迷你分辨率高吗)

    苹果13mini分辨率多少(苹果13迷你分辨率高吗)

  • 华为nova9pro电池多大容量(华为nova9pro电池健康度怎么看)

    华为nova9pro电池多大容量(华为nova9pro电池健康度怎么看)

  • 华为p40发布时间(华为p30上市时间和价格)

    华为p40发布时间(华为p30上市时间和价格)

  • 抖音为什么只能播放一半(抖音为什么只能发日常了)

    抖音为什么只能播放一半(抖音为什么只能发日常了)

  • 有淘宝主播id号,怎么搜(淘宝直播间主播id)

    有淘宝主播id号,怎么搜(淘宝直播间主播id)

  • 全民k歌被对方拉黑怎么解除(全民K歌被对方拉黑了还能关注对方吗)

    全民k歌被对方拉黑怎么解除(全民K歌被对方拉黑了还能关注对方吗)

  • 淘宝包裹正在等待揽收如何退款(淘宝包裹正在等待揽收是什么意思)

    淘宝包裹正在等待揽收如何退款(淘宝包裹正在等待揽收是什么意思)

  • 微信打字栏显示不出来?(微信打字栏显示不出来文字)

    微信打字栏显示不出来?(微信打字栏显示不出来文字)

  • ai换脸是什么意思(ai换脸是什么意思,有什么风险吗)

    ai换脸是什么意思(ai换脸是什么意思,有什么风险吗)

  • 腾讯会议会被监控吗(腾讯会议会监视你的屏幕吗)

    腾讯会议会被监控吗(腾讯会议会监视你的屏幕吗)

  • 淘宝刷单会封号吗

    淘宝刷单会封号吗

  • 拼多多互助上限了怎么办(拼多多互助上限了别人还能帮我吗)

    拼多多互助上限了怎么办(拼多多互助上限了别人还能帮我吗)

  • 微信怎样换字体风格(微信怎样换字体样式)

    微信怎样换字体风格(微信怎样换字体样式)

  • 正在同时使用WLAN和移动数据怎么关闭

    正在同时使用WLAN和移动数据怎么关闭

  • k30pro屏幕尺寸(k30pro屏幕多少bit)

    k30pro屏幕尺寸(k30pro屏幕多少bit)

  • 苹果云奇付下载不了(苹果手机云奇付下载)

    苹果云奇付下载不了(苹果手机云奇付下载)

  • 怎么把5g频段的wifi改成2.4g(怎么把5g频段的wifi改成2.4g华为手机)

    怎么把5g频段的wifi改成2.4g(怎么把5g频段的wifi改成2.4g华为手机)

  • 关联的qq怎么让对方不显示消息(关联qq怎么让对方看不到消息)

    关联的qq怎么让对方不显示消息(关联qq怎么让对方看不到消息)

  • 荣耀v30有没有防水(荣耀v30防摔吗)

    荣耀v30有没有防水(荣耀v30防摔吗)

  • 腾讯视频app怎么用手机号登录(腾讯视频app怎么扫码登录)

    腾讯视频app怎么用手机号登录(腾讯视频app怎么扫码登录)

  • heliop22相当于骁龙什么处理器(heliop22相当于麒麟)

    heliop22相当于骁龙什么处理器(heliop22相当于麒麟)

  • pe-windows是什么(PE-Windows是什么)

    pe-windows是什么(PE-Windows是什么)

  • 手机为什么突然黑屏没反应(手机为什么突然黑屏打不开怎么办)

    手机为什么突然黑屏没反应(手机为什么突然黑屏打不开怎么办)

  • 怎么养火花

    怎么养火花

  • 嘀嗒出行如何打发票(嘀嗒出行如何打印发票)

    嘀嗒出行如何打发票(嘀嗒出行如何打印发票)

  • 苹果浏览器扫码在哪(苹果浏览器扫码下载无法安装)

    苹果浏览器扫码在哪(苹果浏览器扫码下载无法安装)

  • 福利费进项税额转出会计分录账务处理
  • 综合收入扣税
  • 补发工资怎么补发
  • 个人为什么不能寄活鱼
  • 幼儿园属于小型幼儿吗
  • 工程项目结算方式有哪几种
  • 小规模纳税人进项发票怎么做账
  • 小规模发票跨月冲红怎么做账
  • 建筑工地的零星补单是指什么意思
  • 生产出口退税企业内部加工费占多少比例
  • 客户为了凑整多打的款计入什么科目?
  • 小规模应纳税额怎么算
  • 出售商标使用权收入计入什么科目
  • 发票开具提示
  • 股权转让资本公积怎么处理
  • 营改增后房地产开发企业需要交哪些税?
  • 已认证未抵扣进项税如何做账
  • 分公司开票总公司收款行吗
  • 不得扣除任何费用的是
  • 营改增后建筑业税率变化情况
  • 卷烟批发环节消费税计算
  • 股权购买会计分录
  • 公司注销清算企业所得税申报表怎么填
  • 高新技术企业研发人员学历要求
  • 保险公司买保险和银行买保险有什么区别
  • 废料销售成本怎么计算
  • 企业间借款增值税怎么算
  • 任务栏音量图标点击无反应
  • 今天中秋节
  • 办公楼装修费两万合理吗
  • 土地抵减销项税 土地增值税
  • 申请退税怎么算
  • 多模态 融合
  • 电子承兑非拒付追索待清偿
  • mysql数据库外键约束怎么写
  • 员工出差预借差旅费入的借贷
  • 影响公司股利分成的因素
  • 办理进出口权的费用西安
  • 顺流交易为什么也要减
  • 专用发票跨月退税怎么办
  • 水泥贸易利润
  • 跨年发票如何做会计分录
  • 出现销项负数
  • 把办公场所转租合法吗
  • 无形资产内部研究开发支出的处理
  • 计提社保个人部分会计分录
  • 如果收到现金抵押怎么办
  • 费用类科目的明细怎么写
  • 业务招待费纳税调整会计分录
  • 公司购买电缆线怎么做账
  • 积分中的换元怎么使用
  • 商品库存明细账
  • Mysql使用or如何优化
  • windows桌面快捷方式怎么创建
  • win7防火墙如何添加允许
  • Windows Server 2008:手足之争下的赢家
  • centos svn服务器搭建web
  • win7双系统怎么设置开机选择系统
  • 虚拟光驱安装
  • xp系统修改分辨率
  • linux卸载apache2
  • win7系统安全软件
  • tab栏切换案例
  • node_
  • [置顶] 关于UNITY5.0和高通AR4.2.3在手机上白屏的问题
  • ES6 javascript的异步操作实例详解
  • android游戏编程之从零开始
  • js中的正则表达式的例子
  • Python爬取网易云一首歌的全部评论并进行分析
  • javascript制作简易计算机
  • 使用vue-cli快速搭建vue项目
  • node.js连接mysql的数据怎么可视化
  • 骞怎么读什么意思是什么
  • js获取鼠标坐标到浏览器底部
  • python怎么读取中文txt文本
  • 如何使用jquery实现点击按钮弹出一个对话框
  • 同源策略详解
  • 税务分享风险如何解决
  • 江西低保查询系统
  • 民办学校需要交工会经费吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设