就是每个文本框输入满了自动跳转到下一个文本框如果按退格则跳到前一个文本框<input type="text" name="number0" id="number0" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(0,event);"/>
<input type="text" name="number1" id="number1" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(1,event);">
<input type="text" name="number2" id="number2" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(2,event);">
<input type="text" name="number3" id="number3" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(3,event);">
<input type="text" name="number4" id="number4" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(4,event);" />
<input type="text" name="number5" id="number5" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(5,event);" />
<script type="text/javascript">
function checkCode(id,e)
{
var result = checkNumber(e);
// alert(result);
var i = id;
if (result == 1){
i++;
try{
document.getElementById('number'+i).focus();
document.getElementById('number'+i).select();
}catch(e){
//到了最后一格
};
return true;
}else if (result == 0){
return true;
}else if (result == -1){
i--;
try{
document.getElementById('number'+i).focus();
document.getElementById('number'+i).select();
}catch(e){
//到了最后一格
};
return true;
}else{
return false;
}
}
function checkNumber(e)
{
var key = window.event ? e.keyCode : e.which;
// alert(key);
if (key==8) return -1; //退格,跳到前一个输入框,如果存在的话
if (key==0) return 0; //非错误,执行但不跳转
var keychar = String.fromCharCode(key);
var reg = /\d/;
var result = reg.test(keychar);
if(!result)
return -2; //错误
else{
return 1; //输入成功,跳到下一个输入框,如果存在的话
}
}
</script>FF下可以,IE下,键盘的onkey事件好像实现不了先判断后跳转的功能?
<input type="text" name="number1" id="number1" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(1,event);">
<input type="text" name="number2" id="number2" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(2,event);">
<input type="text" name="number3" id="number3" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(3,event);">
<input type="text" name="number4" id="number4" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(4,event);" />
<input type="text" name="number5" id="number5" class="number03" maxlength="1" onclick="this.select();" onkeyup="return checkCode(5,event);" />
<script type="text/javascript">
function checkCode(id,e)
{
var result = checkNumber(e);
// alert(result);
var i = id;
if (result == 1){
i++;
try{
document.getElementById('number'+i).focus();
document.getElementById('number'+i).select();
}catch(e){
//到了最后一格
};
return true;
}else if (result == 0){
return true;
}else if (result == -1){
i--;
try{
document.getElementById('number'+i).focus();
document.getElementById('number'+i).select();
}catch(e){
//到了最后一格
};
return true;
}else{
return false;
}
}
function checkNumber(e)
{
var key = window.event ? e.keyCode : e.which;
// alert(key);
if (key==8) return -1; //退格,跳到前一个输入框,如果存在的话
if (key==0) return 0; //非错误,执行但不跳转
var keychar = String.fromCharCode(key);
var reg = /\d/;
var result = reg.test(keychar);
if(!result)
return -2; //错误
else{
return 1; //输入成功,跳到下一个输入框,如果存在的话
}
}
</script>FF下可以,IE下,键盘的onkey事件好像实现不了先判断后跳转的功能?
加在onkeyup里面也不行。