vue+elementui,使用label替代placeholder

先定义label和input两个标签,注意这两个组件必须在同一个父组件下。
在这里插入图片描述
关键部分在于下列的 {z-index: 1;}
它可以使label显示在input之上。
在这里插入图片描述
效果显示
在这里插入图片描述
placeholder除了显示文本之外,点击该input时placeholder文本会消失。
那么需要两个主要的input属性@focus和@blur。
在这里插入图片描述
这两个方法写在method() {} 里面:

	CheckAndChangeNicknameStatus: function () {
        let nickname = document.getElementById('nickname');
        console.log("nickname.value.length", nickname.value.length);
        if (nickname.value.length !== 0) {
          this.nicknameStatus = true;
          return;
        }
        this.nicknameStatus = false;
      },
      nicknameOnFocus: function () {
        this.CheckAndChangeNicknameStatus();
        console.log('聚焦');
        this.inputPlaceholderShowStatus = false;
      },
      nicknameOnBlur: function () {
        this.CheckAndChangeNicknameStatus();
        console.log('散去');
        console.log('nicknameStatus', this.nicknameStatus);
        this.inputPlaceholderShowStatus = !this.nicknameStatus;
      }

而主要控制label是否显示,取决于是否
this.inputPlaceholderShowStatus = true;
而这个inputPlaceholderShowStatus属性与label的v-if="inputPlaceholderShowStatus"绑定。
在这里插入图片描述
补充:
v-if和v-show这两个需要进一步了解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值