我有一个大型 HTML 数据输入表,实现为输入字段的大型矩阵。我正在尝试实现一个基于 JavaScript 的功能,该功能可以在逐行和逐列制表符顺序之间动态切换。
我使用的方法似乎只在 IE8 中工作“一次”。也就是说,一旦使用 JavaScript 设置了选项卡索引,任何后续更改都将被忽略 - 并且选项卡排序恢复到其默认状态。
表输入具有如下类名:
.row-0 .col-0 | .row-0 .col-1 | .row-0 .col-2 | ...
--------------+---------------+---------------+----
.row-1 .col-0 | .row-1 .col-1 | .row-1 .col-2 | ...
我的 JavaScript 看起来像这样:
nCols = ...;
nRows = ...;
function setTabOrder(byCol) {
var max = byCol ? nCols : nRows;
var selector = byCol ? '.col-' : '.row-';
var tabIndex = 1;
for (var i = 0; i < max; i++) {
$(selector + i).each(function () {
this.tabIndex = tabIndex++;
//this.value = this.tabIndex;
});
}
}
实际上,如果我在页面加载时调用,我似乎只能按列进行选项卡setTabOrder(true);
,即:
$(function () {
setTabOrder(true);
});
任何想法为什么这不能像我期望的那样工作?