有没有一种方法可以让javascript不计算特定的字符
Is there a way I can make javascript to not count a particular character?
在第1页中,我有这个html
<input value="creditCard" name="creditCard" maxlength="16">
<input value="name" name="name" maxlength="4">
<input type="button" name="submit">
DISPLAY:
1234567891234568
Name
button
如果我单击button
,我将转到第2页,在第2页中我有一个编辑按钮。如果我点击edit
,我将再次被引导到第1页,并使用掩码形式的信用卡
DISPLAY:
XXXX-XXXX-XXXX-4568
Name
button
例如,如果我单击creditCard
输入,然后单击name
输入,则显示将类似于:
DISPLAY:
XXXX-XXXX-XXXX-4
Name
button
由于我添加了"-",它算作一个字符,并且最大长度为16,因此输入的值仅修剪为16个字符。
有没有一种方法可以让我不把"-"视为一个需要计数的字符?我无法调整输入的maxlength属性。这是商业规则。非常感谢!
为什么不使用JQuery Mask插件用于此目的:
https://igorescobar.github.io/jQuery-Mask-Plugin/
它给了你很多需要处理的模式。
我希望您能在这段代码中解决它。
<!DOCTYPE html>
<html>
<body>
<form id="myForm">
<input type="text" size="4" tabindex="1" maxlength="4" onkeyup="myFunction(this,this.value)"> -
<input type="text" size="4" tabindex="2" maxlength="4" onkeyup="myFunction(this,this.value)"> -
<input type="text" size="4" tabindex="3" maxlength="4" onkeyup="myFunction(this,this.value)">
</form>
<script>
function myFunction(x, y) {
if (y.length == x.maxLength) {
var next = x.tabIndex;
if (next < document.getElementById("myForm").length) {
document.getElementById("myForm").elements[next].focus();
}
}
}
</script>
</body>
</html>
相关文章:
- 从JSON数组计算javascript中的日期差异
- 计算JavaScript中的时间差异(天+小时+分钟+秒)
- 计算 JavaScript 中数组中元素的出现次数
- 计算JavaScript中句子(数组)中字符(数组)的出现次数
- 计算javascript对象中的出现次数
- 计算 JavaScript 的问题
- 简单计算 - JavaScript
- 计算 Javascript 数组索引的出现次数
- 计算 JavaScript 数组中对象的出现次数
- 很难计算Javascript的总数
- 计算 JavaScript 中数组中元素的频率
- 计算 javascript 中的 http 请求数
- 用于计算 JavaScript 中字符串的正则表达式
- 计算 JavaScript 中以 ISO 8859-7 编码的文件的字节大小
- 借助firebug或IE 8调试器或chrome调试器来计算javascript函数流的方法
- 如何计算javascript中登录尝试的最大次数
- 如何计算javascript html字符串变量中的行数
- 使用Date对象计算Javascript执行速度是否正确
- 计算JavaScript对象中属性百分比的变化
- 如何计算Javascript中字符串之间的时差?