微信小程序6位或多位验证码密码输入框功能的实现代码


Posted in Javascript onMay 29, 2018

在做小程序过程中做一个6位验证码输入框,本以为很简单,但是在写的时候遇到各种各样的阻力,在网上查阅资料也寥寥无几,后来经过一番思考,终于敲定下来本人最满意的方案,特意发出来让大家参考一下,希望能帮到大家!

一、效果图如下:

微信小程序6位或多位验证码密码输入框功能的实现代码

微信小程序6位或多位验证码密码输入框功能的实现代码

二、代码部分

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({ 
 /** 
  * 页面的初始数据 
  */ 
 data: { 
  Length:6,    //输入框个数 
  isFocus:true,  //聚焦 
  Value:"",    //输入的内容 
  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、放置一个输入框,隐藏其文字和位置,同时设置支付输入框(表格)样式
2、当点击输入框时设置输入框为聚焦状态,唤起键盘,点击空白处,失去焦点,设为失去焦点样式,因为输入框宽高为0,所以不会显示输入框和光标,实现隐藏。
3、限制输入框最大字数并且监听输入框状态,以输入框值的长度作为输入框(表格)内容的渲染条件
4、点击提交按钮时,获取输入框内容。

总结

以上所述是小编给大家介绍的微信小程序6位或多位验证码密码输入框功能的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript Array数组对象的扩展函数代码
May 22 Javascript
ajax java 实现自动完成功能
Dec 19 Javascript
解析使用JS 清空File控件的路径值
Jul 08 Javascript
多个js毫秒倒计时同时进行效果
Jan 05 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
Feb 14 Javascript
jQuery模仿阿里云购买服务器选择购买时间长度的代码
Apr 29 Javascript
AngularJS基础 ng-open 指令简单实例
Aug 02 Javascript
vue利用axios来完成数据的交互
Mar 23 Javascript
@angular前端项目代码优化之构建Api Tree的方法
Dec 24 Javascript
js逆向解密之网络爬虫
May 30 Javascript
基于vue和websocket的多人在线聊天室
Feb 01 Javascript
动态实现element ui的el-table某列数据不同样式的示例
Jan 22 Javascript
Vue 全局loading组件实例详解
May 29 #Javascript
详解vue-cli 本地开发mock数据使用方法
May 29 #Javascript
详解vue-cli项目中怎么使用mock数据
May 29 #Javascript
js统计页面上每个标签的数量实例代码
May 29 #Javascript
浅谈React的最大亮点之虚拟DOM
May 29 #Javascript
深入理解Vue Computed计算属性原理
May 29 #Javascript
javascript、php关键字搜索函数的使用方法
May 29 #Javascript
You might like
php object转数组示例
2014/01/15 PHP
php图像处理类实例
2015/07/28 PHP
WordPress中用于创建以及获取侧边栏的PHP函数讲解
2015/12/29 PHP
php 实现Hash表功能实例详解
2016/11/29 PHP
PHP实现大数(浮点数)取余的方法
2017/02/18 PHP
laravel框架语言包拓展实现方法分析
2019/11/22 PHP
Javascript中Eval函数的使用说明
2008/10/11 Javascript
Jquery封装tab自动切换效果的具体实现
2013/07/13 Javascript
转换字符串为json对象的方法详解
2013/11/29 Javascript
浅析Node.js的Stream模块中的Readable对象
2015/07/29 Javascript
JavaScript实现横向滑出的多级菜单效果
2015/10/09 Javascript
深入学习jQuery Validate表单验证(二)
2016/01/18 Javascript
canvas实现图片根据滑块放大缩小效果
2017/02/24 Javascript
jQuery为某个div加入行样式
2017/06/09 jQuery
浅谈JS封闭函数、闭包、内置对象
2017/07/18 Javascript
JavaScript实现body内任意节点的自定义属性功能示例
2017/09/18 Javascript
JS实现网页抢购功能(触发,终止脚本)
2017/11/27 Javascript
vue项目中使用百度地图的方法
2018/06/08 Javascript
前端性能优化建议
2020/09/17 Javascript
如何利用nodejs实现命令行游戏
2020/11/24 NodeJs
[46:38]完美世界DOTA2联赛PWL S2 Magma vs PXG 第三场 11.28
2020/12/02 DOTA
python self,cls,decorator的理解
2009/07/13 Python
浅谈Python的垃圾回收机制
2016/12/17 Python
Python实现繁体中文与简体中文相互转换的方法示例
2018/12/18 Python
Python操作Mongodb数据库的方法小结
2019/09/10 Python
pytorch实现focal loss的两种方式小结
2020/01/02 Python
CSS3 实现飘动的云朵动画
2020/12/01 HTML / CSS
国际商务系学生个人的自我评价
2013/11/26 职场文书
五型班组建设方案
2014/02/10 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
大学生党员自我评价范文
2014/04/09 职场文书
社会实践先进工作者事迹材料
2014/05/06 职场文书
机关作风整顿个人整改措施思想汇报
2014/09/29 职场文书
2015年优质护理服务工作总结
2015/04/08 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书
vue使用watch监听属性变化
2022/04/30 Vue.js