vue判断按钮是否可以点击


Posted in Vue.js onApril 09, 2022

根据条件判断按钮是否可以点击

按钮当在特定环境下不可点击,需要根据判断来控制点击事件。

方法一:使用v-if 、v-else 来判断

<template>
    <div>
        <el-button v-if="!isDisabled"></el-button>
        <el-button v-else @click="getDetail()"></el-button>
    </div>
</template>

方法二:增加一个变量,判断

<template>
<el-button @click="!isDisabled && getDetail()"></el-button>
</template>
<script>
data(){
    return{
        isDisabled:true,  //为true时可以点击,false时不可点击
    }
}
</script>

两种方法都可以,但第二种相对来说编写的代码更少,具体怎么用看个人习惯。  

vue判断点击当前元素

点击按钮,出现弹窗;然后点击遮罩层,当前弹窗消失。

vue判断按钮是否可以点击

一开始都会在遮罩层上绑定点击事件,但是这样的话,点击了form表单,当前弹窗也会消失。

需要判断你是点击了遮罩层还是form表单

1.在遮罩层上绑定点击事件 @click=“showfun2($event)”

<div class="topfrom" v-show="msg" @click="showfun2($event)">
    <!--子组件-->
    <fromdemo btndata="点击咨询"></fromdemo>  
</div>

2.判断是否点击了当前元素 e.currentTarget === e.target

showfun2(e) {
    if (e.currentTarget === e.target) {
        this.msg = false
    }
},

以上就完成当前事件点击元素的判断。

接下来是分别对e.currentTarget、e.target打印

showfun2(e) {
    console.log(e.currentTarget)
    console.log(e.target)
},

第一次点击 遮罩层 

vue判断按钮是否可以点击

第二次点击 form表单

vue判断按钮是否可以点击

发现 e.currentTarget 打印的始终是,绑定点击事件的元素。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。 

Vue.js 相关文章推荐
vue自定义插件封装,实现简易的elementUi的Message和MessageBox的示例
Nov 20 Vue.js
vue动态合并单元格并添加小计合计功能示例
Nov 26 Vue.js
Vue router传递参数并解决刷新页面参数丢失问题
Dec 02 Vue.js
Vue——前端生成二维码的示例
Dec 19 Vue.js
Vue3 实现双盒子定位Overlay的示例
Dec 22 Vue.js
vue3.0自定义指令(drectives)知识点总结
Dec 27 Vue.js
Vue+scss白天和夜间模式切换功能的实现方法
Jan 05 Vue.js
如何在vue-cli中使用css-loader实现css module
Jan 07 Vue.js
vue路由实现登录拦截
Mar 24 Vue.js
vue实现可拖拽的dialog弹框
May 13 Vue.js
vue判断按钮是否可以点击
Apr 09 Vue.js
VUE之图片Base64编码使用ElementUI组件上传
Apr 09 #Vue.js
vue如何实现关闭对话框后刷新列表
Apr 08 #Vue.js
vue实现列表垂直无缝滚动
Apr 08 #Vue.js
vue3引入highlight.js进行代码高亮的方法实例
vue中的可拖拽宽度div的实现示例
vue 实现弹窗关闭后刷新效果
Apr 08 #Vue.js
vue中this.$http.post()跨域和请求参数丢失的解决
Apr 08 #Vue.js
You might like
使用PHP模拟HTTP认证
2006/10/09 PHP
PHP入门学习笔记之一
2010/10/12 PHP
一个简单且很好用的php分页类
2013/10/26 PHP
PHP简单创建压缩图的方法
2016/08/24 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
2016/10/17 PHP
浅析PHP类的反射来实现依赖注入过程
2018/02/06 PHP
Windows服务器中PHP如何安装redis扩展
2019/09/27 PHP
比较简单实用的使用正则三种版本的js去空格处理方法
2007/11/18 Javascript
js实现广告漂浮效果的小例子
2013/07/02 Javascript
JQuery勾选指定name的复选框集合并显示的方法
2015/05/18 Javascript
JQuery中Text方法用法实例分析
2015/05/18 Javascript
JavaScript中的cacheStorage使用详解
2015/07/29 Javascript
基于JS实现数字+字母+中文的混合排序方法
2016/06/06 Javascript
Vue.js基础知识小结
2017/01/13 Javascript
AngularJS通过ng-Img-Crop实现头像截取的示例
2017/08/17 Javascript
10个最优秀的Node.js MVC框架
2017/08/24 Javascript
仿京东快报向上滚动的实例
2017/12/13 Javascript
vuejs点击class变化的实例
2018/09/05 Javascript
jQuery+PHP+Ajax实现动态数字统计展示功能
2019/12/25 jQuery
js中!和!!的区别与用法
2020/05/09 Javascript
Python替换月份为英文缩写的实现方法
2019/07/15 Python
Python3将数据保存为txt文件的方法
2019/09/12 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
2020/12/14 Python
HTML5实现签到 功能
2018/10/09 HTML / CSS
伦敦所有西区剧院演出官方票务代理:Theatre Tickets Direct
2017/05/26 全球购物
澳大利亚天然护肤品、化妆品和健康产品一站式商店:Nourished Life
2018/12/02 全球购物
Mankind美国/加拿大:英国领先的男士美容护发用品公司
2018/12/05 全球购物
新西兰最大、占有率最高的综合性药房:PharmacyDirect药房中文网
2020/11/03 全球购物
应用艺术毕业生的自我评价
2013/12/04 职场文书
秸秆管理实施方案
2014/03/15 职场文书
党员四风问题个人对照检查材料
2014/10/26 职场文书
小学优秀班主任材料
2014/12/17 职场文书
会议接待欢迎词范文
2015/01/26 职场文书
完美处理python与anaconda环境变量的冲突问题
2021/04/07 Python
Python OpenCV超详细讲解基本功能
2022/04/02 Python