是否有方法检测和更改输入值格式
Is there any way to detect and change the input value format?
我正在用正则表达式检查和验证文本区域值我想改变格式,像这样:用户输入:
123456
更改为:
12/34/56
可以在纯js中完成吗?
编辑:这就是我所做的:
function changeIt() {
var inputChanger = document.getElementById("id").value.replace(something , something);
document.getElementById("id").value = inputChanger;
}
但不知道如何继续
试试这样:
注意:要使这段代码工作,HTML必须在JavaScript之前,但是堆栈溢出显然会重新排序代码片段,以始终优先显示JS (?)
var input = document.getElementById('my-input');
function format() {
// 'd matches a digit,
// parenthesis let you use the matched values as $n in the replacement string
input.value = input.value.replace(/('d'd)('d'd)('d'd)/, '$1/$2/$3');
}
// you probably only need one of these, but it doesn't hurt to have both
input.addEventListener('change', format);
input.addEventListener('keyup', format);
<input type="text" id="my-input" />
当然,它也可以用一些jQuery和像http://jquery-plugins.net/maskjs-jquery-plugin-to-mask-inputs这样的插件来完成-但我认为即使你最终这样做了,也应该了解幕后发生的事情。
相关文章:
- 使用正则表达式将输入格式设置为单字符逗号、单字符逗号等
- 24小时输入时间:mm格式跨浏览器
- Angular指令中的最佳实践是将文本输入设置为英尺和英寸的格式
- 限制输入标记的格式
- 输入中的国际电话号码格式
- 在模糊 javascript 上格式化为 hh:mm 输入
- 将输入格式设置为从年月日到年月日
- Javascript输入格式
- 轨道 - 日期输入格式
- Angular-UI 日期选择器不允许在输入字段中输入格式 dd.MM.yyyy
- 如何使 JS 将 12 小时的输入格式解析为 24 或
- AngularJs - 修改输入格式的指令
- 如何将日期的格式现在更改为输入格式
- 脚本生成的输入格式不正确
- 如何使用jquery改变十进制的掩码输入格式
- 如何阻止用户动态输入格式不正确的日期?
- 如何将date类型的输入格式设置为dd-MM-yyyy
- 如何使用甘特-工具提示属性在角表格中显示用户输入格式的日期
- 用于验证经度和纬度输入格式的正则表达式
- JSON Parser with jquery.令牌输入(格式)