diff --git a/Source/Interface/HtmlTable.Select.js b/Source/Interface/HtmlTable.Select.js index 67e3228b..b4fd9903 100644 --- a/Source/Interface/HtmlTable.Select.js +++ b/Source/Interface/HtmlTable.Select.js @@ -163,7 +163,6 @@ HtmlTable = Class.refactor(HtmlTable, { if (typeOf(startRow) == 'element') startRow = rows.indexOf(startRow); if (typeOf(endRow) == 'element') endRow = rows.indexOf(endRow); - endRow = endRow < rows.length - 1 ? endRow : rows.length - 1; if (endRow < startRow){ var tmp = startRow; @@ -171,7 +170,10 @@ HtmlTable = Class.refactor(HtmlTable, { endRow = tmp; } - for (var i = startRow; i <= endRow; i++){ + var rowAfterEndRow = Math.min(endRow + 1, rows.length); + startRow = Math.max(startRow, 0); + + for (var i = startRow; i < rowAfterEndRow; i++){ if (this.options.selectHiddenRows || rows[i].isDisplayed()) this[method](rows[i], true); }