vue 验证码界面实现点击后标灰并设置验证码界面实现点击后标灰并设置div按钮不可点击状态按钮不可点击状态
今天小编就为大家分享一篇vue 验证码界面实现点击后标灰并设置div按钮不可点击状态,具有很好的参考价
值,希望对大家有所帮助。一起跟随小编过来看看吧
1、先看看效果图、先看看效果图
未点击获取验证码的按钮状态
点击后的不可点击状态
2、代码实现、代码实现
<template>
<div class="my-code">
<input class="my-code-input" type="text" v-model="login_form.captcha" placeholder="Your Captcha">
<div class="my-code-get" @click="get_captcha" id="new_yan">
<span v-show="show">Get Captcha</span>
<span v-show="!show">{{ count }} s</span>
</div>
</div>
</template>
<script>
import store from '@/store'
import Vue from 'vue'
import $ from 'jquery'
export default {
name: "register",
data () {
return {
show: true,
count: 60,
timer: null,
}
},
methods: {
get_captcha() {
if (this.login_form.username === '' ) {
alert('Phone number or mailbox cannot be empty')
} else {
if(this.timer == null){
getValidate(this.login_form.username).then(response => {
const data = response.data
console.log(data)
console.log('成功')
}).catch(error => {
console.log(error)
alert(error)
})
}
if (!this.timer) {
this.count = 60;
this.show = false;
$(".my-code-get").addClass("huise")
// 将鼠标设置为不可点击状态
document.getElementById('new_yan').style.cursor = 'not-allowed'
this.timer = setInterval(() => {
if (this.count > 0 && this.count <= 60) {
this.count--
} else {
this.show = true
clearInterval(this.timer)
this.timer = null
}
}, 1000)
}
}
}
},
created: function() {
},
watch:{
timer: function(val){
console.log(val)
评论0
最新资源