日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

uniapp 手機驗證碼輸入框實現代碼(隨機數、倒計時、隱藏手機號碼中間四位)可以直接使用

瀏覽:225日期:2022-06-01 08:27:31

如鍵盤被隱藏,可直接點擊藍框彈出鍵盤,藍框就相當于input的光標,驗證碼輸入錯誤之后會將字體以及邊框改為紅色,持續1.5s(可自行修改時間),然后清空數據。

<template>	<view>		<view>請輸入驗證碼			<view>已向<text>+86 {{phone.substring(0, 3)}}****{{phone.substr(phone.length-4)}}</text>發送驗證碼</view>			<view v-if="codeclolor == "#ff0000"">驗證碼輸入錯誤</view>		</view>		<input adjust-position="false" auto-blur="true" @blur="blur" @input="codenum" :focus="focus"					value="code" v-model="code" type="number" maxlength="6" />		<view>			<view v-for="(item,index) in 6" :key="index" @click="codefocus(index)"						:style="(index == code.length? "border: 5rpx solid #1195db;width: 80rpx;height: 80rpx;line-height: 80rpx;":"color: " + codeclolor + ";" +"border: 2rpx solid" + codeclolor)">						{{code[index] && code[index] || ""}}			</view>		</view>		<block v-if="sec!=20">			<view>重新發送({{sec}}s)</view>		</block>				<button @click="getCode()" type="primary" :disabled="verifyShow">發送短信</button>	</view></template> <script>	export default {		data() {			return {				phone:"12345678910",				// 驗證碼輸入聚焦				focus: true,//input焦點,用于鍵盤隱藏后重新喚起				// 驗證碼框顏色				codeclolor: "#313131",//自定義光標的顏色				// 驗證碼獲取秒數				sec: "20",//這是重新獲取驗證碼的倒計時(可根據需求修改)				code: "",//這是用戶輸入的驗證碼				codeCorrect:"",//正確的驗證碼				verifyShow:false,//是否禁用按鈕			}		},		methods: {			// 輸入驗證碼			codenum: function(event) {				// console.log("輸入的值",event.target.value)				var that = this				var code = event.target.value				that.code = code				if (code.length == 6) {					if (code == that.codeCorrect) {		//輸入六位驗證碼后自動進行驗證并執行驗證成功的函數						console.log("驗證碼正確:",that.code)					} else {						console.log("驗證碼錯誤!!!:",that.code)						that.codeclolor = "#ff0000"						setTimeout(function() {							that.code = []							event.target.value = ""							that.codeclolor = "#313131"						}, 1500)					}				}			},			// 鍵盤隱藏后設置失去焦點			blur: function() {				var that = this				that.focus = false			},			// 點擊自定義光標顯示鍵盤			codefocus: function(e) {				var that = this				if (e == that.code.length) {					that.focus = true				}			},			getCode(){//獲取驗證碼				const that = this				that.codeCorrect = that.getVerificationCode(6)  //可以不傳值,默認為4位隨機碼				console.log("生成的隨機碼為:" + that.codeCorrect)				that.timedown(that.sec)// 倒計時			},			//隨機生成幾位數			getVerificationCode(codeLength){ //傳入需要的字符串長度,不傳默認為4				// 準備一個用來抽取碼的字符串,或者字典				// let verification_code_str = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";  //數字和字母				let verification_code_str = "0123456789";     //純數字				// 獲取某個范圍的隨機整數,封裝的函數,在上面抽取字典的時候進行了調用				function getRandom(min, max) {//意思是獲取min-max數字之間的某個隨機數,直接調用即可					return Math.round(Math.random() * (max - min) + min);				}				let newStr = "";    //創建一個空字符串,用來拼接四位隨機碼				for (var i = 0; i < codeLength; i++) {       //for循環四次,則拼接四次隨機碼					newStr += verification_code_str[getRandom(0, verification_code_str.length - 1)];   //從字典中隨機選一個下標,并拼接到空字符串中				}				return newStr			},			//倒計時			timedown:function(num){				let that = this;				if(num == 0){					that.verifyShow = false;		 // 不禁用獲取驗證碼按鈕					that.sec = 20						return clearTimeout();				}else{					that.verifyShow = true;			// 禁用獲取驗證碼按鈕					setTimeout(function() {  						that.sec = num-1						that.timedown(num-1);  					}, 1000);//定時每秒減一  				}			},		}	}</script> <style scoped lang="less">	    .code {			margin: auto;			margin-top: 50rpx;			width: 650rpx;			height: auto;		}	 	    .code-tip-one {			width: 650rpx;			height: 250rpx;			line-height: 100rpx;			font-size: 60rpx;			font-weight: bold;			color: #313131;		}	 		.code-tip {			width: 650rpx;			height: 100rpx;			line-height: 50rpx;			font-size: 30rpx;			font-weight: normal;			color: #8a8a8a;		}	 		.code-errow {			width: 650rpx;			height: 50rpx;			line-height: 25rpx;			font-size: 28rpx;			font-weight: normal;			color: #ff0000;		}	 		.code-tip>text {			padding: 0 20rpx;			width: 650rpx;			font-size: 30rpx;			font-weight: normal;			color: #ff5500;		}	 	    .code-input {			margin: auto;			width: 650rpx;			height: 100rpx;			display: flex;		}	 		.code-input>view {			margin-top: 5rpx;			margin-left: 15rpx;			width: 86rpx;			height: 86rpx;			line-height: 86rpx;			font-size: 60rpx;			font-weight: bold;			color: #313131;			text-align: center;			border-radius: 10rpx;		}	 		.code-input>view:nth-child(1) {			margin-left: 0rpx;		}	 		.cinput {			position: fixed;			left: -100rpx;			width: 50rpx;			height: 50rpx;		}				.recode{			margin-top: 20rpx;			width: 200rpx;			height: 80rpx;			line-height: 80rpx;			color: #707070;			font-size: 28rpx;		}</style>

實現思路:創建六個正方形的view(使用for循環),然后創建一個數字input,最大輸入長度為六位(根據驗證碼的長度),再將input隱藏掉,獲取到的值分別放到六個view中。

其中驗證碼驗證失敗之后利用v-model雙向綁定進行清空已經輸入的值

注意:單純的輸出 code[index] 不會展示空只會展示未定義,必須加上 {{code[index] && code[index] || ''}} 進行判斷替換為空,密碼輸入框替換字符,也就是與或非的意思吧

如果是不想展示驗證碼信息可以改為{{code[index] && '●' || ''}},這樣你輸入是參數就會被替換為●●●●●●

到此這篇關于uniapp 手機驗證碼輸入框(隨機數、倒計時、隱藏手機號碼中間四位)可以直接使用的文章就介紹到這了,更多相關uniapp驗證碼輸入框內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: JavaScript
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久精品导航| 亚洲综合精品四区| 日韩电影免费网站| 不卡中文字幕| 日本亚洲视频| 精品视频自拍| 国产亚洲精品久久久久婷婷瑜伽| 久久性天堂网| 国产精品jk白丝蜜臀av小说| 成人精品中文字幕| 日韩精品一区二区三区免费视频| 国模大尺度视频一区二区| 激情婷婷综合| 日本不卡在线视频| av高清不卡| 亚洲精品极品| 国产资源在线观看入口av| 久久成人亚洲| 美女久久精品| 首页国产欧美日韩丝袜| 久久精品资源| 久久国产精品99国产| 国产精品高潮呻吟久久久久| 日韩精品一区二区三区免费观看| 亚洲免费专区| 日本欧美不卡| 欧美日韩伊人| 国产高清久久| 久久99蜜桃| 国产毛片一区| 中文字幕成在线观看| 亚洲狼人精品一区二区三区| 伊人久久国产| 91福利精品在线观看| 99视频精品视频高清免费| 国产日产一区| 国产精品婷婷| 日韩一区二区三区免费播放| 日韩一区二区三区四区五区| 亚洲天堂一区二区| 欧美日韩一区二区三区四区在线观看| 99久久精品网站| 久久久久伊人| 亚洲精品亚洲人成在线观看| 久久精品播放| 久久三级中文| 日韩在线观看一区二区三区| 久久国产精品成人免费观看的软件| 国产日韩高清一区二区三区在线| 国产一级一区二区| 蜜桃成人精品| 九九九精品视频| 欧美影院精品| 在线亚洲自拍| 亚洲性图久久| 天堂av在线| 老司机精品在线| 欧美亚洲专区| 亚洲人妖在线| 亚洲一区国产| 国产精品av久久久久久麻豆网| 精品国产a一区二区三区v免费| 日韩精品视频一区二区三区| 国产亚洲在线观看| 九色精品91| 久久久久欧美精品| 高清在线一区| 久久av超碰| 日韩精选在线| 一级成人国产| 快she精品国产999| 国产视频一区免费看| 久久中文亚洲字幕| 日韩精品一卡| 日本欧美不卡| 久久久精品五月天| 日韩免费福利视频| 伊人久久av| 久久男人av资源站| 国产精品国产三级国产在线观看| 美腿丝袜亚洲三区| 国产精品视频一区二区三区四蜜臂 | 亚洲欧美日韩专区| 久久九九精品| 性欧美videohd高精| 中文在线а√天堂 | 99tv成人| 91精品婷婷色在线观看| 四虎4545www国产精品 | 日韩av午夜在线观看| 亚洲精品乱码日韩| 日本综合精品一区| 奇米色欧美一区二区三区| 日韩av一二三| 国产伦乱精品| 美女视频黄 久久| 精品国产乱码久久久久久樱花| 国产精品va视频| 麻豆视频一区| 激情黄产视频在线免费观看| 高清av一区二区三区| 久久精品国产亚洲夜色av网站| 欧美不卡高清一区二区三区| 久久久久网站| 精品1区2区3区4区| 日韩中文字幕亚洲一区二区va在线| 爽好久久久欧美精品| 亚洲精品伊人| 国产日韩视频在线| 国产高清精品二区| 日韩成人a**站| 久久黄色影院| 亚洲免费影视| 日本特黄久久久高潮| 国产剧情在线观看一区| 美女久久久精品| 美女av在线免费看| 日韩中文视频| 日韩视频一区| 日韩精品第二页| 国产激情综合| 成人羞羞视频播放网站| 最新日韩欧美| 日韩欧美高清一区二区三区| 国产午夜精品一区在线观看| 精品一区二区三区在线观看视频| 天堂√8在线中文| 精品91久久久久| 日本电影久久久| 欧美激情国产在线| 亚洲综合三区| 国产精品videossex| av综合电影网站| 久久福利毛片| 久久久久久亚洲精品美女| 999国产精品| 日韩一区二区三区免费视频| 精品日产乱码久久久久久仙踪林| 精品一区三区| 国产探花一区二区| 日韩欧美精品综合| 中文精品电影| 精品99在线| 亚洲欧美日韩精品一区二区| 国产乱论精品| 欧美日中文字幕| 日韩和欧美一区二区| 电影91久久久| 蜜桃视频在线观看一区二区| 精品久久91| 蜜臀久久99精品久久久久久9| 国产精品www.| 国产婷婷精品| 精品视频在线观看网站| 亚洲欧美日韩一区在线观看| 麻豆国产欧美日韩综合精品二区| 欧美特黄a级高清免费大片a级| 国产日韩精品视频一区二区三区| se01亚洲视频| 欧美性www| 婷婷精品视频| 国产精品一区三区在线观看| 久久久久国产| 国产欧美久久一区二区三区| 影视先锋久久| 国产精品一区二区三区四区在线观看| 久久久久久久久丰满| 国产免费播放一区二区| 狠狠干成人综合网| 精品久久久网| 午夜久久av | 日本91福利区| 99成人超碰| 国产精品亚洲欧美| 日韩亚洲国产欧美| 国产精品麻豆久久| 69精品国产久热在线观看| 国产精品99一区二区| 久久精品二区亚洲w码| 男女男精品视频网| 亚洲成人av观看| 久久不见久久见免费视频7| 欧美在线综合| 欧洲av一区二区| 精品一区二区三区在线观看视频| 亚洲涩涩av| 亚洲二区三区不卡| 日韩国产一区| 国产欧美自拍一区| 午夜在线精品偷拍| 久久久久久久久99精品大| 嫩草伊人久久精品少妇av杨幂| 在线精品一区| 狠狠操综合网| 日韩黄色大片| 精品久久久网| 国产精品资源| 日本综合精品一区| 日韩在线一二三区| 狠狠干成人综合网|