Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 3.0.1, 3.1.0.BETA2
-
Fix Version/s: 3.1.0.RC1, 3.1, EE-3.0.0.GA_P01
-
Component/s: ACE-Components
-
Labels:None
-
Environment:Showcase application, Chrome, IE9, Firefox (bug#2 only)
-
Assignee Priority:P1
Description
Bug#1:
Wrapping the column content in a <div> lets ice.ace.DataTable.prototype.resizeScrolling from datatable.js count too many columns in the body:
var bodySingleCols = ice.ace.jq(dataTable.jqId + ' .ui-datatable-scrollable-body:first tbody tr:first td div:first-child').get().reverse();
Hence bodySingleCols.length is higher than realHeadSingleCols.length / dupeHeadSingleCols.length.
As bodySingleCols.length is used in the for-loop assigning the column widths, there are invalid indices (e.g. bodySingleCols counts 8, realHeadSingleCols counts 6) in
for (i = 0; i < bodySingleCols.length; i++) {
realHeadColumn = ice.ace.jq(realHeadSingleCols[i]);
[...]
}
Bug#2:
Columns of the ace:dataTable appear misaligned with header when you enable scrolling.
----------------------------------
Use showcase application to reproduce both bugs.
Screenshot attached.
Wrapping the column content in a <div> lets ice.ace.DataTable.prototype.resizeScrolling from datatable.js count too many columns in the body:
var bodySingleCols = ice.ace.jq(dataTable.jqId + ' .ui-datatable-scrollable-body:first tbody tr:first td div:first-child').get().reverse();
Hence bodySingleCols.length is higher than realHeadSingleCols.length / dupeHeadSingleCols.length.
As bodySingleCols.length is used in the for-loop assigning the column widths, there are invalid indices (e.g. bodySingleCols counts 8, realHeadSingleCols counts 6) in
for (i = 0; i < bodySingleCols.length; i++) {
realHeadColumn = ice.ace.jq(realHeadSingleCols[i]);
[...]
}
Bug#2:
Columns of the ace:dataTable appear misaligned with header when you enable scrolling.
----------------------------------
Use showcase application to reproduce both bugs.
Screenshot attached.
Actually the two bugs are both connected to the wrong column count hence could be solved by solving this central issue. The datatable fails to synch headers and body due to the different column count.