我的表格格式是这样的不能改动:
6908741329326 | ewfdsfsdf | dfsdfsdf | dfsdfsd | ||
6908741329326 | dsdfsfsdf | sdfsdfsfs | dfsdfsd | ||
以上是表格的样子,只有文本框中的内容可以改动,其他的值不能改动,文本框name="aaa",id是动态获取的值,id="dddd"和id="ccc"的文本框是固定的值,name="remark"文本框是可改动的。我的意思是这样的,当第一行获取光标后就把光标定位到name="aaa"的文本框,然而按"=>"光标,进入id="ddd"的文本框,再按下光标进入id="ccc"的文本框,按左光标进入name="aaa"的文本框编辑文本框.最好有实例...........谢谢。
[b]问题补充:[/b]
在模块中是用来输入订单数据,方面用户使用,只有文本框的数据可以修改,其他数据是从数据库查询出来的不能改动的
[b]问题补充:[/b]
用户有比较多的订单,在很短的时间内输入,用户要求用光标速度比较快,不会用table键,我开始的想法也是用Table键,用户要求不行.希望可以用光标实例...........
[b]问题补充:[/b]
大家过来帮帮忙。。。本人非常感谢!
[b]问题补充:[/b]
实现不了,原因是文本框的name值是数组,id是动态的,不能搞定
[b]问题补充:[/b]
var curRow=order.parentNode.rowIndex;//得到当前行索引
var curCol=order.parentNode.parentNode.//得到当前列索引
我试了一下上面二行有问题.
[b]问题补充:[/b]
是用order.TR.rowIndex 这个吗好像不对。
[b]问题补充:[/b]
function keyDown(){
var iekey=event.keyCode;
var realkey=String.fromCharCode(event.keyCode);
//按"Insert"键表格获取光标事件
var grid=document.getElementById("protable");
var order=event.target||event.srcElement; //得到当前的文本框
if(iekey==38){
var curRow = order.parentNode.parentNode.rowIndex;//行索引
var curCol = order.parentNode.cellIndex;//列索引
alert(curRow+","+curCol);
if(grid.childNodes[0].childNodes[curRow-1]!=null){
grid.childNodes[0].childNodes[curRow-1].childNodes[curCol].childNodes[0].select();//选中上一行的文本框.
}
}else if(iekey==40){
var curCol = order.parentNode.parentNode.rowIndex;//行索引
var curRow = order.parentNode.cellIndex;//列索引
alert(curRow + "," + curCol);
if(grid.childNodes[0].childNodes[curRow-1]!=null){
grid.childNodes[0].childNodes[curRow].childNodes[curCol-1].childNodes[0].select();//选中下一列的文本框.
}
}
}
document.onkeydown = keyDown;
文本框总是不能获取光标。。。。。。。。。。。