微信小程序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 相关文章推荐
网页中实现浏览器的最大,最小化和关闭按钮
Mar 12 Javascript
判断JavaScript对象是否可用的最正确方法分析
Oct 03 Javascript
jQuery数据缓存功能的实现思路及简单模拟
May 27 Javascript
js浮动图片的动态效果
Jul 10 Javascript
js实现在同一窗口浏览图片
Sep 17 Javascript
JavaScript更改原始对象valueOf的方法
Mar 19 Javascript
js实现按钮颜色渐变动画效果
Aug 20 Javascript
手机Web APP如何实现分享多平台功能
Aug 19 Javascript
JS声明对象时属性名加引号与不加引号的问题及解决方法
Feb 16 Javascript
浅谈微信页面入口文件被缓存解决方案
Sep 29 Javascript
Vue 解决多级动态面包屑导航的问题
Nov 04 Javascript
vue中实现拖动调整左右两侧div的宽度的示例代码
Jul 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
一个高ai的分页函数和一个url函数
2006/10/09 PHP
如何使用Linux的Crontab定时执行PHP脚本的方法
2011/12/19 PHP
PHP中防止直接访问或查看或下载config.php文件的方法
2012/07/07 PHP
采用thinkphp自带方法生成静态html文件详解
2014/06/13 PHP
php中出现空白页的原因及解决方法汇总
2014/07/08 PHP
Codeigniter校验ip地址的方法
2015/03/21 PHP
yii2 数据库读写分离配置示例
2017/02/10 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
PHP dirname功能及原理实例解析
2020/10/28 PHP
innerHTML,outerHTML,innerTEXT三者之间的区别
2007/01/28 Javascript
国外Lightbox v2.03.3 最新版 下载
2007/10/17 Javascript
{}与function(){}选用空对象{}来存放keyValue
2012/05/23 Javascript
类似php的js数组的in_array函数自定义方法
2013/12/27 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
关于JS中的方法是否加括号的问题
2016/07/27 Javascript
JQuery之proxy实现绑定代理方法
2016/08/01 Javascript
AngularJS+Bootstrap实现多文件上传与管理
2016/11/08 Javascript
Vue infinite update loop的问题解决
2019/04/23 Javascript
什么时候不能在 Node.js 中使用 Lock Files
2019/06/24 Javascript
微信小程序实现下拉框功能
2019/07/16 Javascript
koa2 从入门到精通(小结)
2019/07/23 Javascript
基于js实现数组相邻元素上移下移
2020/05/19 Javascript
[46:47]完美世界DOTA2联赛PWL S2 FTD vs Magma 第二场 11.20
2020/11/23 DOTA
python批量导入数据进Elasticsearch的实例
2018/05/30 Python
PYTHON实现SIGN签名的过程解析
2019/10/28 Python
django的模型类管理器——数据库操作的封装详解
2020/04/01 Python
Python HTMLTestRunner可视化报告实现过程解析
2020/04/10 Python
Django实现图片上传功能步骤解析
2020/04/22 Python
css3针对移动端卡顿问题的解决(动画性能优化)
2020/02/14 HTML / CSS
Boda Skins皮衣官网:奢侈皮夹克,全球配送
2016/12/15 全球购物
.net工程师笔试题
2012/06/09 面试题
电气工程及其自动化学生实习自我鉴定
2013/09/19 职场文书
大学生实习自我鉴定
2013/12/11 职场文书
mysql 索引合并的使用
2021/08/30 MySQL
了解Kubernetes中的Service和Endpoint
2022/04/01 Servers
Python+SeaTable实现计算两个日期间的工作日天数
2022/07/07 Python