怎样用键盘控制输入框的选择? 就像EXCEL操作一下,可以上下左右进行输入框选择的输入,提高操作效率? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 使用我写的方法/*键盘上下键移动,在文本控件中移动需要在 <body中 加上 onload="initKey()" > cols =? 为多列设定,单列为 1 ,多列时可以使用左右键。。2004/08/18 10:47:47*/var cols=1; var CanMove=false; var key; function initKey(){ document.onkeydown=keyDown; document.onkeyup=keyUp; } function keyDown(DnEvents){ var key=window.event.keyCode; // 如果按回车,且当前焦点不是button,submit,a ,image,则当做是Table键跳格if(key ==13){ //alert (event.srcElement.type); if (event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='image' && event.srcElement.type!=''){ event.keyCode =9; }}else{ if(key==116){ window.event.keyCode=0; return false; } if(key==8){ if(event.srcElement.tagName!="INPUT"){ event.cancelBubble = true; event.returnValue = false; return false; } } // 是否使用 Ctrl键 Start //var IsCtrl=window.event.ctrlKey; //if(!IsCtrl){ //return; //} // 是否使用 Ctrl键 End var obj = event.srcElement; for(var i=0;i<document.forms[0].elements.length;i++){ if(document.forms[0].elements[i]==obj){ //alert (obj); //if (key == 37){//← //if(i>0){ //document.forms[0].elements[i-1].focus(); //} //} if (key == 38){//↑ if(i>cols-1){ document.forms[0].elements[i-cols].focus(); } } //if (key == 39){//→ //if(i<document.forms[0].elements.length-1){ document.forms[0].elements[i+1].focus(); } //} if (key == 40){//↓ if(i<document.forms[0].elements.length-cols){ document.forms[0].elements[i+cols].focus(); } } } } }} function keyUp(UpEvents){ return false; } /*<script language="javascript" for="document" event="onkeydown"><!-- if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='image' && event.srcElement.type!='') event.keyCode=9;--></script>*/ JBOSS 关于jsp 中session的清空 【求助】JQuery如何对$.post之后得到的html代码使用选择器? (急) 高手们帮帮忙 谁能给个把Google广告放入FLASH的例子 js问题,期待高手到来 请教一个 复选框 计算值的 问题!谢谢各位 在后台代码中如何获得前台变量? 终于搞明白new 这个家伙干什么的。 [求助]怎么求得表格Rows 一个很菜的问题。 fullcalendar 日历插件 如何在绑定数据时根据绑定的数据标识设置当天单元格的背景色呢? 一直都没有什么好的方法解决的问题!!请赐教 session 问题
键盘上下键移动,在文本控件中移动
需要在 <body中 加上 onload="initKey()" >
cols =? 为多列设定,单列为 1 ,多列时可以使用左右键。。
2004/08/18 10:47:47
*/
var cols=1;
var CanMove=false;
var key; function initKey(){
document.onkeydown=keyDown;
document.onkeyup=keyUp;
} function keyDown(DnEvents){
var key=window.event.keyCode; // 如果按回车,且当前焦点不是button,submit,a ,image,则当做是Table键跳格
if(key ==13){
//alert (event.srcElement.type);
if (event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='image' && event.srcElement.type!=''){
event.keyCode =9;
}
}else{
if(key==116){
window.event.keyCode=0;
return false;
}
if(key==8){
if(event.srcElement.tagName!="INPUT"){
event.cancelBubble = true;
event.returnValue = false;
return false;
}
}
// 是否使用 Ctrl键 Start
//var IsCtrl=window.event.ctrlKey;
//if(!IsCtrl){
//return;
//}
// 是否使用 Ctrl键 End
var obj = event.srcElement;
for(var i=0;i<document.forms[0].elements.length;i++){
if(document.forms[0].elements[i]==obj){
//alert (obj);
//if (key == 37){//←
//if(i>0){
//document.forms[0].elements[i-1].focus();
//}
//}
if (key == 38){//↑
if(i>cols-1){ document.forms[0].elements[i-cols].focus(); }
}
//if (key == 39){//→
//if(i<document.forms[0].elements.length-1){ document.forms[0].elements[i+1].focus(); }
//}
if (key == 40){//↓
if(i<document.forms[0].elements.length-cols){ document.forms[0].elements[i+cols].focus(); }
}
}
}
}} function keyUp(UpEvents){
return false;
}
/*<script language="javascript" for="document" event="onkeydown"><!-- if(event.keyCode==13 && event.srcElement.type!='button' && event.srcElement.type!='submit' && event.srcElement.type!='reset' && event.srcElement.type!='image' && event.srcElement.type!='') event.keyCode=9;--></script>
*/