详解微信小程序input标签正则初体验
开篇废话
在开发过程中经常遇到这样的需求:用户只能输入数字并且只保留小数点两位。虽然我们可以在提交表单的时候进行验证,但是体验不是很好。下面我主要使用了小程序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);
}
}
结束
这个正则表达式不是很完美,欢迎一起来优化。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- 解决uni-app微信小程序input输入框在底部时,键盘弹起页面整体上移问题
- 一文解决微信小程序button、input和image表单组件
- 微信小程序input、textarea层级过高穿透的问题解决
- 微信小程序点击按钮动态切换input的disabled禁用/启用状态功能
- 微信小程序事件 bindtap bindinput代码实例
- 微信小程序实现提交input信息到后台的方法示例
- 微信小程序input框中加入小图标的实现方法
- 微信小程序使用input组件实现密码框功能【附源码下载】
- 微信小程序 input输入及动态设置按钮的实现
- 微信小程序中input标签详解及简单实例
- 微信小程序中input组件为什么设置readonly只读属性没有作用(失效)?
相关文章
js实现base64、url和blob之间相互转换的三种方式
Blob对象表示一个不可变、原始数据的类文件对象,Blob表示的不一定是JavaScript原生格式的数据,下面这篇文章主要给大家介绍了关于js实现base64、url和blob之间相互转换的三种方式,需要的朋友可以参考下2023-04-04


最新评论