当前位置:主页 > 网页前端 > vue >

Vue如何设置button的disable属性

时间:2022-08-07 08:59:05 | 栏目:vue | 点击:

Vue设置button的disable属性

表单元素有一个disable属性,用来控制该元素是否可用。

1.这个属性在HTML里只有1个值

用法就是 <button disable="disable">点击</button> 

经实测,disable接受任何属性值,甚至只要你给标签添加了disable的属性,这个表单元素就成为不可用状态。

换句话说,如果你试图用下面的语句,让按钮成为可用状态,是不可行的。  

<button disable="false">点击</button>   //仍然是不可用状态

2.如果需要在vue项目中控制按钮的可用与否

其实很简单  

<template>
    <button v-bind:disable="dis">点击</button>   //仍然是不可用状态
</template>
<script>
    export default{
        data(){
            return {
                dis: false
            }
        }
    }
</script>

虽然原生的HTML标签只要有disable属性,不管它值是什么,效果都是不可用。但是在vue里就不是这样了。通过属性绑定,可以使用bool值来控制对应的表单元素是否可用。

前提是,必须使用属性绑定机制v-bind。

Vue使用js控制button的disabled属性

<button ref="btn">按钮</button>

最好不要使用this.$refs.btn.setAttribute('disabled',true);禁用按钮

因为这个的效果和this.$refs.btn.setAttribute('disabled',false);是一样的,都禁用按钮了,因为true或者false被转化为了字符串,而这个字符串基本等效于true,也就是都是禁用的写法

而若是改为this.$refs.btn.disabled = true(禁用按钮),this.$refs.btn.disabled = false(可用按钮)就能满足正常的需求了

不过非要使用setAttribute也不是不行,要取消禁用按钮就要配合removeAttribute使用了:

this.$refs.btn.removeAttribute('disabled');

vue不太建议使用dom,所以当然在标签中写啦,   :disabled=flag(注意flag不要加引号,flag在data中设为Boolean值) 

您可能感兴趣的文章:

相关文章