信息发布→ 登录 注册 退出

Vue如何设置button的disable属性

发布时间:2026-01-11

点击量:
目录
  • Vue设置button的disable属性
    • 1.这个属性在HTML里只有1个值
    • 2.如果需要在vue项目中控制按钮的可用与否
  • Vue使用js控制button的disabled属性

    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值) 

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

    在线客服
    服务热线

    服务热线

    4008888355

    微信咨询
    二维码
    返回顶部
    ×二维码

    截屏,微信识别二维码

    打开微信

    微信号已复制,请打开微信添加咨询详情!