1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > html调整表格位置上下左右 利用jquery实现在html的表格中使用上下左右键切换单元格

html调整表格位置上下左右 利用jquery实现在html的表格中使用上下左右键切换单元格

时间:2022-11-28 23:44:21

相关推荐

html调整表格位置上下左右 利用jquery实现在html的表格中使用上下左右键切换单元格

因其他无关代码比较多,只贴关键代码,请谅解。

解释:tblGrid是表格的id ,

onchange是每个单元格都拥有的方法,当然可以根据实际情况更改flag是标志位,保证按照我想要的顺序新增tabindex

$(function() {

var baseIndex = 100;

var flag=1;

$("#tblGrid").find("tr").each(function(r) {

if($(this).find("[onchange]").length >0){

$(this).find("[onchange]").each(function(c) {

$(this).attr("tabindex", flag * 100 + c + baseIndex);

});

flag++;

}

});

});

/**

控制input框 限制只能输入数字

*/

function check(event) {

var e = window.event || event;

var target = e.srcElement || e.target;

var tabIndex=target.tabIndex;

var className=target.className;

var k = e.keyCode;

if(isFunKey(k,tabIndex)) {

return true;

}

var c = getChar(k);

if(target.value.length == '' && (c == '-' || c == '+')) {

return true;

}

if(isNaN(target.value + getChar(k))) {

return false;

}

return true;

}

function isFunKey(code,tabIndex) {

// 8 --> Backspace

// 9 --> tab

// 35 --> End

// 36 --> Home

// 37 --> ←

// 38 --> ↑

// 39 --> →

// 40 --> ↓

// 46 --> Delete

// 112~123 --> F1~F12

var funKeys = [8,9, 35, 36, 37,38, 39,40, 46];

for(var i = 112; i <= 123; i++) {

funKeys.push(i);

}

for(var i = 0; i < funKeys.length; i++) {

if(funKeys[i] == code) {

if(funKeys[i]==38){

tabIndex -= 100;

$("input[tabindex=" + tabIndex + "]").focus();

return false;

}else if(funKeys[i]==40){

tabIndex += 100;

$("input[tabindex=" + tabIndex + "]").focus();

return false;

}else if(funKeys[i]==37){

tabIndex--;

$("input[tabindex=" + tabIndex + "]").focus();

return false;

}else if(funKeys[i]==39){

tabIndex++;

$("input[tabindex=" + tabIndex + "]").focus();

return false;

}

return true;

}

}

return false;

}

html调整表格位置上下左右 利用jquery实现在html的表格中使用上下左右键切换单元格 同时只限制单元格输入数字...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。