javascript - 在 javascript 中使用正则表达式格式化输入文本
问题描述
我需要像这样格式化输入文本:2342452-1。输入七个数字后,我需要添加一个破折号 (-),然后再添加一个数字。在 javaScript 中是否有一种简单的方法可以做到这一点?
解决方案
您可以检查长度并用于indexOf
查找此字符串是否包含“-”
function maskinput(e) {
if (e.target.value.length > 7 && e.target.value.indexOf('-') === -1) {
let substring1 = e.target.value.slice(0, 7),
substring2 = e.target.value.slice(7, e.target.value.length);
e.target.value = substring1 + '-' + substring2;
}
}
<input type='text' onkeyup='maskinput(event)'>
推荐阅读
- android - Headless Android Emulator:即使设置 Geo Fix,GPS 定位也无法正常工作
- python-3.x - 如何在 Python 中加快密码生成脚本的速度?
- android - Flutter 应用程序无法在调试模式下启动
- python - 如何处理 marshmallow-sqlalchemy 中的嵌套关系
- c - 和表达式的一个条件失败但代码执行
- git - 如何诊断损坏的 git 存储库
- shopify - 如何删除此页面加载器?
- android - 在 Android 上以编程方式启用网络接口
- javascript - nifi executeScript 不工作
- android - Xamarin.Android - 视频解密需要太多时间