详解微信小程序input标签正则初体验


Posted in Javascript onAugust 18, 2018

开篇废话

在开发过程中经常遇到这样的需求:用户只能输入数字并且只保留小数点两位。虽然我们可以在提交表单的时候进行验证,但是体验不是很好。下面我主要使用了小程序input标签的bindinput方法对输入的值进行监听,然后进行正则匹配。

1. input标签

微信小程序input标签自带type=digit属性,可以调起带有小数点的数字键盘,maxlength属性可以控制我们输入字符的个数,然后我们给input标签绑定bindinput方法。

<input type="digit" bindinput="regInput" maxlength="15"/>

2. 绑定监听事件

bindinput方法可以监听到当前输入框的值,类似于onchange事件,但不太一样。通过e.detail.value可以获取到input的值,return返回的字符串可以替换掉输入的字符串。

3. 正则匹配

匹配正则通过则返回所有字符,不通过则去掉最后一个不匹配的字符返回。

/*正则匹配*/
regInput(e){
  if(/^(\d?)+(\.\d{0,2})?$/.test(e.detail.value)){
    return e.detail.value;
  }else {
    return e.detail.value.substring(0,e.detail.value.length-1);
  }
}

结束

这个正则表达式不是很完美,欢迎一起来优化。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS 分号引起的一段调试问题
Jun 18 Javascript
jquery sortable的拖动方法示例详解
Jan 16 Javascript
详解javascript高级定时器
Dec 31 Javascript
整理关于Bootstrap过渡动画的慕课笔记
Mar 29 Javascript
JS排序之快速排序详解
Apr 08 Javascript
微信小程序教程系列之设置标题栏和导航栏(7)
Jun 29 Javascript
微信小程序之前台循环数据绑定
Aug 18 Javascript
详解基于Node.js的HTTP/2 Server实践
May 31 Javascript
Vue2.x Todo之自定义指令实现自动聚焦的方法
Jan 08 Javascript
前端Vue项目详解--初始化及导航栏
Jun 24 Javascript
Vue 实现复制功能,不需要任何结构内容直接复制方式
Nov 09 Javascript
通过实例了解JS执行上下文运行原理
Jun 17 Javascript
vue实现键盘输入支付密码功能
Aug 18 #Javascript
记录一篇关于redux-saga的基本使用过程
Aug 18 #Javascript
Vue实现6位数密码效果
Aug 18 #Javascript
JavaScript实现淘宝京东6位数字支付密码效果
Aug 18 #Javascript
详解Angular6 热加载配置方案
Aug 18 #Javascript
Vue+element-ui 实现表格的分页功能示例
Aug 18 #Javascript
vue下history模式刷新后404错误解决方法
Aug 18 #Javascript
You might like
php发送get、post请求的6种方法简明总结
2014/07/08 PHP
PHP版本升级到7.x后wordpress的一些修改及wordpress技巧
2015/12/25 PHP
PHP CURL采集百度搜寻结果图片不显示问题的解决方法
2017/02/03 PHP
Jquery中getJSON在asp.net中的使用说明
2011/03/10 Javascript
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
EditPlus注册码生成器(js代码实现)
2013/03/25 Javascript
jquery实现excel导出的方法
2013/04/04 Javascript
顶部缓冲下拉菜单导航特效的JS代码
2013/08/27 Javascript
jQuery实现的原图对比窗帘效果
2014/06/15 Javascript
JavaScript实现的SHA-1加密算法完整实例
2016/02/02 Javascript
JS Array创建及concat()split()slice()的使用方法
2016/06/03 Javascript
微信小程序 前端源码逻辑和工作流详解
2016/10/08 Javascript
微信小程序 获取当前地理位置和经纬度实例代码
2016/12/05 Javascript
JavaScript箭头(arrow)函数详解
2017/06/04 Javascript
Vue.2.0.5实现Class 与 Style 绑定的实例
2017/06/20 Javascript
详解node服务器中打开html文件的两种方法
2017/09/18 Javascript
vue 使用Jade模板写html,stylus写css的方法
2018/02/23 Javascript
vue-cli结合Element-ui基于cropper.js封装vue实现图片裁剪组件功能
2018/03/01 Javascript
python与sqlite3实现解密chrome cookie实例代码
2018/01/20 Python
解决python os.mkdir创建目录失败的问题
2018/10/16 Python
python调用matplotlib模块绘制柱状图
2019/10/18 Python
X/HTML5 和 XHTML2
2008/10/17 HTML / CSS
HTML5 新标签全部总汇(推荐)
2016/06/13 HTML / CSS
Lookfantastic葡萄牙官方网站:欧洲第一大化妆品零售商
2018/03/17 全球购物
微软美国官方网站:Microsoft美国
2018/05/10 全球购物
通往英国高街的商店橱窗:Down Your High Street
2020/07/19 全球购物
计算 s=(x*y)1/2,用两个宏定义来实现
2016/08/11 面试题
Android面试题及答案
2015/09/04 面试题
创意活动策划书
2014/01/15 职场文书
护士进修自我鉴定
2014/02/07 职场文书
《狮子和兔子》教学反思
2014/03/02 职场文书
企业安全生产责任书
2014/04/14 职场文书
医生爱岗敬业演讲稿
2014/08/26 职场文书
公司委托书格式范文
2014/10/09 职场文书
Nginx配置https原理及实现过程详解
2021/03/31 Servers
教你怎么用python selenium实现自动化测试
2021/05/27 Python