function move_inp(i,n,s,a){
keycode=event.keyCode;//focus(),down 40,up 38
if(keycode==40){n=n+1;}else if(keycode==38){n=n-1;}
if(n<a&&n>=s){eval("document.all."+i+""+n).focus();eval("document.all."+i+""+n).select();event.returnValue=false;}
}
keycode=event.keyCode;//focus(),down 40,up 38
if(keycode==40){n=n+1;}else if(keycode==38){n=n-1;}
if(n<a&&n>=s){eval("document.all."+i+""+n).focus();eval("document.all."+i+""+n).select();event.returnValue=false;}
}
keycode=event.keyCode;//focus(),down 40,up 38
if(keycode==40 || keycode==38)
{
n= keycode==40?n+1:n-1;
if(n<a &&n >= s)
{
eval("document.all."+i+""+n).focus();
eval("document.all."+i+""+n).select();
event.returnValue=false;
}
}
}
一般来讲你按了键,都是要触发事件的,而这个事件一般来讲也会产生一些效果。当你没加的时候,其实select()也执行了,但是方法之后returnValue = true的话,就要执行一些我们看不到的代码。这个代码产生的效果就是你一开始看到的了。只有当returnValue = false那段代码才不执行。
也就是说,全选的效果被正常的操作所产生的效果给覆盖了。
eval("document.all."+i+""+n).select();
=========================================已经选择
event.returnValue=false;//阻止接受上下键,不写的话接受,使选择失效了