用方向鍵控制焦點在控件中移動
<HTML>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/HTML; charset=utf-8">
<script language="JavaScript">
var cols=3;
var obj;
var CanMove=false;
var key;
function setobj(input){
obj=input;
}
function init(){
document.onkeydown=keyDown;
document.onkeyup=keyUp;
}
function keyDown(DnEvents){
var key=window.event.keyCode;
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 註釋此處可以實現不需要ctrl
//var IsCtrl=window.event.ctrlKey;
//if(!IsCtrl){
// return;
//}
for(var i=0;i<document.forms[0].elements.length;i++){
if(document.forms[0].elements[i]==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 == 13)
{//→
event.keyCode = 9;
}
if (key == 40){//↓
if(i<document.forms[0].elements.length-cols){
document.forms[0].elements[i+cols].focus();
}
}
}
}
}
function keyUp(UpEvents){
return false;
}
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000" onLoad="init();form1.aa.focus()">
<form name="form1">
<table border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>
<input type="text" name="aa" onFocus="setobj(this)">
</td>
<td>
<input type="text" name="textfield2" onFocus="setobj(this)">
</td>
<td>
<input type="text" name="textfield3" onFocus="setobj(this)">
</td>
</tr>
<tr>
<td>
<input type="text" name="textfield5" onFocus="setobj(this)">
</td>
<td>
<input type="text" name="textfield6" onFocus="setobj(this)">
</td>
<td>
<input type="text" name="textfield7" onFocus="setobj(this)">
</td>
</tr>
</table>
</form>
用方向鍵控制焦點在控件中移動。
</body>
</HTML>