当前位置: 首页 > news >正文

【2023-09-01】vue中自定义按钮设置disabled属性后,异常触发click事件

vue中自定义按钮设置disabled属性后,异常触发click事件

项目中自定义按钮,使用a标签实现。设置disabled属性后,点击可以触发click事件。
由于各种原因,项目中并未使用成熟的第三方组件库,例如element-ui,ant-design。大多数组件是自己封装的,部分借鉴了原项目中jQuery、bootstrap实现。

按钮组件源码

列表中需要根据数据中某个变量的值,控制该数据是否可以进行删除操作。代码如下

<a class="btn btn-primary btx-xs" :disabled="_slot.isDelete" @click="deleteFunc(_slot)">删除</a>

当某一条数据中的isDelete为true时,按钮样式为禁用样式,且不能进行删除操作。
但是,此时点击显示禁用效果的按钮时,依然可以发起删除请求!!!

问题原因

首先说明: a标签 是没有disable 属性的 。故在a标签上添加disabled属性是无效的。
为什么按钮展示禁用效果?由于项目中糅合了jQuery和bootstrap的实现,给a标签添加了btn btn-primary btx-xs 类后,就会表现的像button,button是具备disabled的样式的。
所以该自定义的按钮组件添加禁用后,可以显示禁用的效果

解决方案

方案一:调整按钮组件使用的标签,用button替换

替换b标签为button后,即可正常禁用

<button class="btn btn-primary btx-xs" :disabled="_slot.isDelete" @click="deleteFunc(_slot)">删除</button>

方案二:不跳转标签,在删除方法中,添加处理逻辑

在删除方法中,判断isDelete参数是否为true,为true时直接return,不进行后续代码执行

deleteFunc(_row) {if(_row.isDelete) return//正常的删除逻辑...
}

方案三:设置a标签禁用,配合disabled与 pointer-events属性(不推荐)

既然项目中有使用到jQuery和bootstrap的实现,也可以通过jQuery获取对应的DOM元素,然后设置 pointer-events属性。
实现代码大致如下

<a class="btn btn-primary btx-xs custom_btn" :disabled="_slot.isDelete" @click="deleteFunc(_slot)">删除</a>$(".custom_btn").attr("disabled",true); 
$(".custom_btn").css("pointer-events","none");

注意列表中根据返回值不同,会出现按钮禁用与否不同的情况,上述代码可能会将所有的按钮禁用,实际使用时需要注意区别

尾巴

点滴记录,汇聚江河

相关文章:

【2023-09-01】vue中自定义按钮设置disabled属性后,异常触发click事件

vue中自定义按钮设置disabled属性后&#xff0c;异常触发click事件 项目中自定义按钮&#xff0c;使用a标签实现。设置disabled属性后&#xff0c;点击可以触发click事件。 由于各种原因&#xff0c;项目中并未使用成熟的第三方组件库&#xff0c;例如element-ui&#xff0c;a…...

nginx报错file not found解决

文章目录 一、nginx配置文件修改1.1 配置文件位置1.2 php fastcgi配置1.3 测试 二、nginxphp运行原理三、外网访问内网设置 采用nginxphp作为webserver的架构模式&#xff0c;在现如今运用相当广泛。然而第一步需要实现的是如何让nginx正确的调用php。由于nginx调用php并不是如…...

【力扣】96. 不同的二叉搜索树 <动态规划>

【力扣】96. 不同的二叉搜索树 给你一个整数 n &#xff0c;求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种&#xff1f;返回满足题意的二叉搜索树的种数。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff1a;5 示例 2&#xff1a; 输入&am…...

Win11搭建 Elasticsearch 7 集群(一)

一&#xff1a; ES与JDK版本匹配一览表 elasticsearch从7.0开始默认安装了java运行环境&#xff0c;以便在没有安装java运行环境的机器上运行。如果配置了环境变量JAVA_HOME&#xff0c;则elasticsearh启动时会使用JAVA_HOME作为java路径&#xff0c;否则使用elasticsearch根目…...

哭了,python自动化办公,终于支持 Mac下载了

想了解更多精彩内容&#xff0c;快来关注程序员晚枫 大家好&#xff0c;这里是程序员晚枫&#xff0c;小红薯/小破站也叫这个名。 在我的主页发布的免费课程&#xff1a;给小白的《50讲Python自动化办公》&#xff0c;一直在更新中&#xff0c;昨晚12点多&#xff0c;有朋友在…...

【已更新建模代码】2023数学建模国赛B题matlab代码--多波束测线问题

一、 问题重述 1.1问题背景 海洋测深是测定水体深度与海底地形的重要任务&#xff0c;有两种主要技术&#xff1a;单波束测 深与多波束测深。单波束适用于简单任务&#xff0c;但多波束可提供更精确的地形数据。多 波束系统的关键在于覆盖宽度与重叠率的设计&#xff0c;以确保…...

GMSL技术让汽车数据传输更为高效(转)

目前&#xff0c;大部分车企都在其旗舰车型上配备了达到Level 2水平的自动驾驶技术&#xff0c;也就是高级自动驾驶辅助 ADAS系统。ADAS系统硬件主要由以下几部分组成&#xff0c;包括传感器、串行器、解串器、ADAS处理器等。 除了ADAS系统&#xff0c;包括传感器融合、音视频影…...

ARM+Codesys标准通用型控制器

整机工业级设计&#xff0c;通讯外设经过隔离保护 电源宽电压设计(9~36V DC ) 丰富的通讯接口&#xff0c;满足多种场合控制和通讯需求 四核工业级处理器&#xff0c;高性能&#xff0c;低功耗&#xff0c;高可靠性 机身无风扇设计&#xff0c;外壳小巧 搭载内核 100% 自主…...

YOLOV8从零搭建一套目标检测系统(修改model结构必看)附一份工业缺陷检测数据集

目录 1.YOLOV8介绍 2.YOLOV8安装 2.1环境配置 3.数据集准备 1.YOLOV8介绍 Yolov8结构图&#xff1a; YoloV8相对于YoloV5的改进点&#xff1a; Replace the C3 module with the C2f module. Replace the first 6x6 Conv with 3x3 Conv in the Backbone. Delete two Convs …...

Maven 的其它插件

文章目录 Maven 的其它插件dockerfile 插件Apache Maven Checkstyle Pluginp3c-pmd Maven 的其它插件 dockerfile 插件 dockerfile-maven-plugin 是 spotify 公司新提供的、用以替代 docker-maven-plugin 的插件&#xff0c;它同样是用于在 maven 中将当前项目打成一个 docke…...

系列十三、Java操作RocketMQ之带Key的消息

一、概述 RocketMQ中的消息&#xff0c;默认会有一个messageId当做消息的唯一标识&#xff0c;我们也可以给消息携带一个key&#xff0c;用作唯一标识或者业务标识&#xff0c;包括在控制面板&#xff08;Dashboard&#xff0c;RocketMQ的一个可视化面板&#xff09;中也可以使…...

C#调用Dapper

1-查询数据 string sql “查询语句”; using (SqlConnection con new SqlConnection(数据库连接信息)) { List<表结构实体类> list con.Query<表结构实体类>(sql).ToList(); } 2-执行sql string sql “UPDATE table1 SET column1 Name where id id”; using…...

2023高教杯数学建模1:ABC题目+初步想法

2023 ABC题目初步想法 写在最前面A题&#xff1a;定日镜场的优化设计问题1&#xff1a;建模将其抽象为数学公式问题2&#xff1a;固定部分参数&#xff0c;约束条件下的局部最优化问题可尝试方法 问题3&#xff1a;约束条件下的局部最优化问题附录&#xff1a;相关计算公式参考…...

ApachePulsar原理解析与应用实践(学习笔记一)

随着时代的发展&#xff0c;软件设计的理念也在不断发展&#xff0c;从单体服务、面向服务、微服务&#xff0c;发展到云原生以及无服务。其演变的过程是一个能力不断增强&#xff0c;领域边界不断微分细化的过程。比如无服务就是将函数作为服务&#xff0c;就类似dns模式的服务…...

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书南京财经大学图书馆

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书南京财经大学图书馆...

qt 信号与槽机制,登录界面跳转

登录界面跳转 配置文件 .pro QT core gui texttospeechgreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c11# The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecated (the exact warnings # d…...

uniapp的两个跳转方式

uniapp内置多种跳转方式&#xff0c;我这里介绍两个最常用的跳转&#xff0c;uni.navigateTo和uni.switchTab&#xff0c;前者为跳转到非TabBar页面&#xff0c;后者为跳转到TabBar页面&#xff0c;所谓TabBar就是底部导航栏配置的页面&#xff0c;例如下方的index.vue。 在pa…...

【LeetCode】1654:到家的最少跳跃次数的解题思路 关于力扣无法return的BUG的讨论

文章目录 一、题目二、题解与代码三、神奇的BUG3.1 无法执行的 return 和 break 语句3.2 通过另一个 break 解决 一、题目 有一只跳蚤的家在数轴上的位置 x 处。请你帮助它从位置 0 出发&#xff0c;到达它的家。 跳蚤跳跃的规则如下&#xff1a; 它可以 往前 跳恰好 a 个位…...

Calico IP In IP模拟组网

Calico IP In IP模拟组网 网络架构 模拟组网 先在k8s-master-1节点执行如下命令&#xff1a; # 创建veth-pair设备对ip link add veth1 type veth peer name eth0# 创建ns1网络命名空间ip netns add ns1# 将eth0网卡插入ns1网络命名空间ip link set eth0 netns ns1# 为ns1网…...

在linux上挂载windows共享目录

挂载要求 非root用户&#xff08;普通用户&#xff09;能够读写windows共享目录&#xff0c;比如查看文件、创建文件、修改文件、删除文件 # 让普通用户也可以正常读写 uidvalue and gidvalue Set the owner and group of the root of the file system (default: uidgid0, bu…...

2026,AI Agent 真的开始上班了——从 MCP 协议到生产部署,一份踩坑实录

爆款标题备选2026 年&#xff0c;我司来了一个 AI 同事——Agent 落地实录MCP 协议 LangChain Dify&#xff1a;把 AI Agent 塞进生产环境的正确姿势BBC 报道了三个中国人的 AI 恐惧&#xff0c;但我想说点不一样的AI Agent 从 Demo 到生产&#xff0c;中间隔着一个 MCP 协议…...

别再只问哪个大模型更强了,2026年真正决定AI Agent上限的,是向量引擎

别再只问哪个大模型更强了&#xff0c;2026年真正决定AI Agent上限的&#xff0c;是向量引擎 这两年做AI的人&#xff0c;最容易掉进一个坑。 每天盯着模型榜单看。 今天这个模型会写代码了。 明天那个模型会看视频了。 后天又有一个模型说自己推理能力更强了。 看久了以后&…...

灌封胶的热仿真困局:建模方法选择,如何不踩坑?

&#x1f393;作者简介&#xff1a;科技自媒体优质创作者 &#x1f310;个人主页&#xff1a;莱歌数字-CSDN博客 211、985硕士&#xff0c;从业16年 从事结构设计、热设计、售前、产品设计、项目管理等工作&#xff0c;涉足消费电子、新能源、医疗设备、制药信息化、核工业等…...

统考通过率最高传媒艺考机构艺天影视

大家好&#xff0c;我是深耕传媒艺考行业8年的教学顾问。近年来&#xff0c;山西的传媒艺考竞争愈发激烈&#xff0c;以2026届为例&#xff0c;播音统考近万人报考&#xff0c;考生和家长无不感到压力山大。面对如此激烈的竞争&#xff0c;很多同学和家长在选择艺考培训机构时感…...

聚焦新型有效成分,守护爱宠健康

养宠过程中&#xff0c;用药安全是守护宠物健康的核心关键。多数养宠人选药时&#xff0c;常只关注品牌、价格或口碑&#xff0c;却忽略了药物有效成分这一核心根本。随着宠物医药技术迭代升级&#xff0c;多款新型专用药用成分落地应用&#xff0c;凭借精准、安全、低耐药的优…...

Tauri + GitHub Actions 自动化打包指南:如何为你的桌面应用配置跨平台自动更新

Tauri GitHub Actions 自动化打包与更新体系构建指南 当你的Tauri应用从开发阶段进入产品化阶段时&#xff0c;如何确保用户能够无缝获取最新功能和安全更新&#xff0c;成为影响产品体验的关键因素。本文将带你构建一个完整的自动化打包与更新体系&#xff0c;从签名机制到发…...

ACAP架构解析:从FPGA到自适应计算,如何突破冯·诺依曼瓶颈

1. 从FPGA到ACAP&#xff1a;一场计算范式的静默革命作为一名在硬件加速领域摸爬滚打了十几年的工程师&#xff0c;我见过太多“颠覆性”产品的发布&#xff0c;其中不少最终都归于沉寂。但2018年赛灵思&#xff08;Xilinx&#xff09;发布ACAP&#xff08;自适应计算加速平台&…...

由C++速通Lua

一.变量声明1.与C不同Lua的变量声明不需要声明类型&#xff0c;我们创建了一个变量就相当于声明了它&#xff0c;如&#xff1a;a10&#xff0c;就相当于声明了变量a。2.同时Lua中声明的变量默认都是全局变量&#xff0c;如果想要声明局部变量需要在声明前加上local关键字3.在L…...

2026年玉米膨化机市场:谁是真正的行业领航者?

面对快速发展的休闲食品市场&#xff0c;如何在竞争激烈的玉米膨化机市场里抢占先机&#xff1f;随着消费者对健康食品需求的高涨&#xff0c;五谷杂粮膨化食品逐渐成为市场上的一股热潮。本篇将深度解析2026年玉米膨化机行业的趋势、选购要点&#xff0c;并对比测评几个行业知…...

突破Windows资源管理器性能瓶颈:智能缩略图预加载解决方案

突破Windows资源管理器性能瓶颈&#xff1a;智能缩略图预加载解决方案 【免费下载链接】WinThumbsPreloader-V2 WinThumbsPreloader is a powerful open source tool for quickly preloading thumbnails in Windows Explorer. 项目地址: https://gitcode.com/gh_mirrors/wi/W…...