【发布时间】:2017-06-09 15:06:42
【问题描述】:
请看图片。 共有7个文本框,只能输入一个字符
需要满足4个条件
最后一个文本框 - 首先输入最右边/第七个文本框,然后填充第六个,然后是第五个,依此类推
然后最右边/第七个文本框值将移动(左移)到第六个,这样值将移动直到所有 7 个字段都被填满
如果我们将光标放在除最后一个/第七个/最右边之外的任何其他元素上,它会将光标移动到最右边。
会有退格功能删除最右边的,即。第七个字段将被删除第一个字段值将移动到第二个,第二个到第三个,第六个到第七个,这样会发生右移,这样所有元素都将被删除
我的代码
<html>
<head>
<title>JavaScript to automatically move from one field to another field</title>
<script type="text/javascript">
function movetoPrev(current, nextFieldID)
{
if (current.value.length >= current.maxLength)
{
document.getElementById(nextFieldID).focus();
}
}
function movetoLast(current)
{
if (current.value.length < 1)
{
document.getElementById("seventh").focus();
}
}
function isNumber(evt)
{
evt = (evt) ? evt : window.event;
var charCode = (evt.which) ? evt.which : evt.keyCode;
if (charCode > 31 && (charCode < 48 || charCode > 57))
{
alert("Please enter number");
return false;
}
return true;
}
</script>
</head>
<body>
<form class="frm1">
<input class="inputs" type="text" id="first" size="1" pattern="[0-9]" onkeypress="return isNumber(event)" onclick="movetoLast(this)" maxlength="1" />
<input class="inputs" type="text" id="second" size="1" pattern="[0-9]" onkeyup="movetoPrev(this, 'first')" onkeypress="return isNumber(event)" onclick="movetoLast(this)" maxlength="1" />
<input class="inputs" type="text" id="third" size="1" pattern="[0-9]" onkeyup="movetoPrev(this, 'second')" onkeypress="return isNumber(event)" onclick="movetoLast(this)" maxlength="1" />
<input class="inputs" type="text" id="fourth" size="1" pattern="[0-9]" onkeyup="movetoPrev(this, 'third')" onkeypress="return isNumber(event)" onclick="movetoLast(this)" maxlength="1" />
<input class="inputs" type="text" id="fifth" size="1" pattern="[0-9]" onkeyup="movetoPrev(this, 'fourth')" onkeypress="return isNumber(event)" onclick="movetoLast(this)" maxlength="1" />
<input class="inputs" type="text" id="sixth" size="1" pattern="[0-9]" onkeyup="movetoPrev(this, 'fifth')" onkeypress="return isNumber(event)" onclick="movetoLast(this)" maxlength="1" />
<input class="inputs" type="text" id="seventh" size="1" pattern="[0-9]" onkeyup="movetoPrev(this, 'sixth')" onkeypress="return isNumber(event)" maxlength="1" />
【问题讨论】:
标签: javascript css html