焦点移动的问题……(高分求助)!
假如有一个 5 行 6 列的表格,每一格要放一个文本框,如何使用光标键控制文本框的焦点。也是实现:当按向上键时,焦点就移到上面一个文本框上;当按向下键时,焦点移到下面一个文本框;当按左右键时还要考虑到文本内的文本……
谁帮忙写写……
感谢^2
感谢……
问题点数:100、回复次数:5Top
1 楼blestcc(我穿墙而过)回复于 2003-06-01 17:28:17 得分 0
<input onkeydown="if(event.keyCode==40)event.keyCode=9">Top
2 楼blestcc(我穿墙而过)回复于 2003-06-01 17:31:32 得分 0
<form name=form1>
<input name=input1 onkeydown="if(event.keyCode==40) document.form1.input2.focus();">
<input name=input2 onkeydown="if(event.keyCode==40) document.form1.input3.focus();if(event.keyCode==37) document.form1.input1.focus();">
</form>Top
3 楼tdl982324(最爱宝宝的笨熊)回复于 2003-06-02 08:58:39 得分 100
<table id=table2 border=1 onkeydown="move()">
<tr><td><input type=text></td><td><input type=text id=dd></td><td><input type=text></td><td><input type=text></td><td><input
type=text></td><td><input type=text></td></tr>
<tr><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input
type=text></td><td><input type=text></td></tr>
<tr><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input
type=text></td><td><input type=text></td></tr>
<tr><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input
type=text></td><td><input type=text></td></tr>
<tr><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input type=text></td><td><input
type=text></td><td><input type=text></td></tr>
</table>
<script>
function move()
{
var eventTable=document.getElementById("table2");
var eventTd=event.srcElement.parentElement.cellIndex;
var eventTr=event.srcElement.parentElement.parentElement.rowIndex;
if (event.keyCode==40) //down
{
if (eventTable.rows[eventTr].cells.length==eventTd+1)
{
if (eventTable.rows.length==eventTr+1)
eventTable.rows[0].cells[0].firstChild.focus();
else
eventTable.rows[eventTr+1].cells[0].firstChild.focus()
}
else
eventTable.rows[eventTr].cells[eventTd+1].firstChild.focus();
return;
}
if (event.keyCode==38) //up
{
if (eventTd==0)
{
if (eventTr==0)
eventTable.rows[eventTable.rows.length-1].cells[eventTable.rows[eventTable.rows.length-1].cells.length-1].firstChild.focus();
else
eventTable.rows[eventTr-1].cells[eventTable.rows[eventTr-1].cells.length-1].firstChild.focus();
}
else
eventTable.rows[eventTr].cells[eventTd-1].firstChild.focus();
return;
}
}
</script>Top
4 楼nik_Amis(...)回复于 2003-06-02 10:23:22 得分 0
upTop
5 楼remexer(remexer)回复于 2003-06-02 18:50:29 得分 0
upTop




