格式化输入字段,将前4位数字用句点分隔,将后2位数字用句号分隔
Format input field to separate the first 4 digits with a period, and the next 2 digits with a period
我有一个带有占位符值的文本输入。我想知道当用户点击输入时是否可以有一个默认值。值应该如下所示:____.__._____
值中的_
字符应替换为用户键入的内容,但句点应保持不变。
这是我的输入:
<input type="text" id="accountnumber" name="accountnumber" placeholder="Located on your card" />
您可以使用以下插件:
屏蔽输入插件
我的建议涉及两个字段。一个比一个。这是一个演示http://jsfiddle.net/UCPxU/
HTML
<input type="text" class="template" value="____.__._____" />
<input type="text" id="accountnumber" name="accountnumber" placeholder="Located on your card" />
CSS
input {
position: absolute;
top: 0;
left: 0;
}
input[name="accountnumber"] {
background: none;
}
JS-
var input = $("input[name='accountnumber']");
input.on("keyup", function(e) {
var value = input.val();
// catching backspace
if(e.keyCode === 8) {
if(value.length == 4) {
input.val(value.substr(0, 3));
} else if(value.length == 7) {
input.val(value.substr(0, 6));
}
} else {
if(value.length == 4) {
input.val(value + ".");
} else if(value.length == 7) {
input.val(value + ".");
}
}
});
但是,只有当用户分别键入每个字母时,该解决方案才有效。例如,如果他按住3,则会触发一次keyup事件,但添加的字符有几个。无论如何,这可以通过setInterval或类似的方法来解决。
您可以使用所需长度的输入框
例如:
<input type="text" maxlength="4">.<input type="text" maxlength="2">.<input type="text" maxlength="4">
相关文章:
- Javascript-Regex,用于逗号分隔的字母数字
- 输入只允许6位数字,逗号分隔后,允许角js中的另外6位数字
- 需要Selenium IDE中逗号分隔值中的数字
- 在另一个由非字母数字字符分隔的字符串中搜索(任何)字符串
- 向Javascript输出中添加逗号分隔的数字
- javascript正则表达式,用于逗号分隔的数字重复
- 将字符串分隔成数字值
- Regex,用于匹配用逗号分隔的特定数字
- 如何使用css将数字格式化为逗号分隔
- 如何仅替换第一个数字(用连字符分隔)
- 如何在 JavaScript 中用逗号分隔的
- 正则表达式在开始时将字符串与(逗号分隔的)数字匹配,并拆分为数字和其余
- 对具有点分隔数字的属性的对象数组进行排序
- 向数字添加百分之一位,该数字可以逗号或句点分隔
- Javascript - 正则表达式,用于字母,数字,下划线逗号分隔的标签
- 在 JavaScript 中,括号中的数字/函数以逗号分隔
- 正则表达式 javascript 用于检查逗号分隔的数字
- 使用正/负整数和浮点数验证逗号分隔的数字
- 用于JavaScript验证逗号分隔数字的RegEx
- 用逗号分隔数字来分隔 flot 中的轴