有没有一种方法可以使javascript不计算某个特定字符?
问题描述:
在第1页我有这个网站有没有一种方法可以使javascript不计算某个特定字符?
<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
,我将与信用卡蒙面形式
DISPLAY:
XXXX-XXXX-XXXX-4568
Name
button
被引导到第1页,如果再例如,我点击creditCard
输入,然后name
输入,显示器将是这样的:
DISPLAY:
XXXX-XXXX-XXXX-4
Name
button
由于我添加了“ - ”,所以它计数为一个字符,最大长度为16,因此输入的值仅被修整为16个字符。
有没有办法让我不把“ - ”当作一个被算作的角色呢?我无法调整输入的maxlength属性。这是一个商业规则。非常感谢你!
答
我希望你能在这段代码中解决它。
<!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>
不清楚你想要什么,不'-'是'LEN = ccnumber.replace长度(/ - /克, '')。长度;' –
你不能有更多的比输入中最大长度的字符数。只要输入了正确的格式,或者不允许连字符,就需要更改业务规则以允许更多字符。 – nnnnnn