我正在使用正则表达式检查并验证文本区域值 我想改变这样的格式化: 用户输入:
123456
更改为:
12/34/56
这可以用纯粹的js来完成吗?
编辑:
这就是我所做的:
function changeIt() {
var inputChanger = document.getElementById("id").value.replace(something , something);
document.getElementById("id").value = inputChanger;
}
但不知道如何继续
答案 0 :(得分:1)
尝试这样的事情:
注意:要使此代码正常工作,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这样的插件来完成 - 但是我认为即使你最终走这条路也能理解幕后发生的事情。