微信小程序6位或多位驗(yàn)證碼密碼輸入框功能的實(shí)現(xiàn)代碼
在做小程序過(guò)程中做一個(gè)6位驗(yàn)證碼輸入框,本以為很簡(jiǎn)單,但是在寫(xiě)的時(shí)候遇到各種各樣的阻力,在網(wǎng)上查閱資料也寥寥無(wú)幾,后來(lái)經(jīng)過(guò)一番思考,終于敲定下來(lái)本人最滿意的方案,特意發(fā)出來(lái)讓大家參考一下,希望能幫到大家!
一、效果圖如下:


二、代碼部分
wxml:
<form bindsubmit="formSubmit">
<view class='content'>
<block wx:for="{{Length}}" wx:key="item">
<input class='iptbox' value="{{Value.length>=index+1?Value[index]:''}}" disabled password='{{ispassword}}' catchtap='Tap'></input>
</block>
</view>
<input name="password" password="{{true}}" class='ipt' maxlength="{{Length}}" focus="{{isFocus}}" bindinput="Focus"></input>
<view>
<button class="btn-area" formType="submit">Submit</button>
</view>
</form>
js:
Page({
/**
* 頁(yè)面的初始數(shù)據(jù)
*/
data: {
Length:6, //輸入框個(gè)數(shù)
isFocus:true, //聚焦
Value:"", //輸入的內(nèi)容
ispassword:true, //是否密文顯示 true為密文, false為明文。
},
Focus(e){
var that = this;
console.log(e.detail.value);
var inputValue = e.detail.value;
that.setData({
Value:inputValue,
})
},
Tap(){
var that = this;
that.setData({
isFocus:true,
})
},
formSubmit(e){
console.log(e.detail.value.password);
},
})
wxss:
content{
display: flex;
justify-content: space-around;
align-items: center;
margin-top: 200rpx;
}
iptbox{
width: 80rpx;
height: 80rpx;
border:1rpx solid #ddd;
border-radius: 20rpx;
display: flex;
justify-content: center;
align-items: center;
text-align: center;
}
ipt{
width: 0;
height: 0;
}
btn-area{
width: 80%;
background-color: orange;
color:white;
}
三、思路:
1、放置一個(gè)輸入框,隱藏其文字和位置,同時(shí)設(shè)置支付輸入框(表格)樣式
2、當(dāng)點(diǎn)擊輸入框時(shí)設(shè)置輸入框?yàn)榫劢範(fàn)顟B(tài),喚起鍵盤(pán),點(diǎn)擊空白處,失去焦點(diǎn),設(shè)為失去焦點(diǎn)樣式,因?yàn)檩斎肟驅(qū)捀邽?,所以不會(huì)顯示輸入框和光標(biāo),實(shí)現(xiàn)隱藏。
3、限制輸入框最大字?jǐn)?shù)并且監(jiān)聽(tīng)輸入框狀態(tài),以輸入框值的長(zhǎng)度作為輸入框(表格)內(nèi)容的渲染條件
4、點(diǎn)擊提交按鈕時(shí),獲取輸入框內(nèi)容。
總結(jié)
以上所述是小編給大家介紹的微信小程序6位或多位驗(yàn)證碼密碼輸入框功能的實(shí)現(xiàn)代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Webpack中css-loader和less-loader的使用教程
這篇文章主要介紹了關(guān)于Webpack中css-loader和less-loader的使用教程,文中通過(guò)示例代碼介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-04-04
JS+CSS設(shè)置img在DIV中只顯示Img垂直居中的部分
img的寬和Div相同,但高不固定,要求只顯示Img垂直居中的部分,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2013-10-10
uniapp如何編寫(xiě)含有后端的登錄注冊(cè)頁(yè)面
uniapp是一個(gè)使用html5標(biāo)準(zhǔn)的,一次開(kāi)發(fā),可以發(fā)布到安卓,ios,小程序的多端框架,非常方便,下面這篇文章主要給大家介紹了關(guān)于uniapp如何編寫(xiě)含有后端的登錄注冊(cè)頁(yè)面的相關(guān)資料,需要的朋友可以參考下2023-05-05
超詳細(xì)小程序定位地圖模塊全系列開(kāi)發(fā)教學(xué)
這篇文章主要介紹了超詳細(xì)小程序定位地圖模塊全系列開(kāi)發(fā)教學(xué),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
Bootstrap路徑導(dǎo)航與分頁(yè)學(xué)習(xí)使用
這篇文章主要為大家詳細(xì)介紹了Bootstrap路徑導(dǎo)航與分頁(yè)學(xué)習(xí)使用的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02

