Eamon Brosnan![]()
Combining DataTableSort and DataTableScroll can cause a column width mismatch
because sort only recognises one part of the scrollable table. (the header table)
This is fixed by adding a CSS rule to match the data section with the header section padding rule
of 4 20 4 10px.
Additionally, sorting records causes the DataTable to re-render the body section, causing specific
td adjustments to be lost (and automatic layout takes over),
so we need to re-run _syncWidths after those items have been rendered.
For the patch to work you need both the patched _syncWidths and the stylesheet rule, otherwise the column widths will still appear mismatched. Both the code and the stylesheet are included with the source.
You don't need to change any of your code, just include the module in your YUI().use statement.
YUI().use('gallery-user-patch-2530294', function(Y) {
var mockresponse = {
response: {
results: [
{ "id" : "1", "name" : "Joe" },
{ "id" : "2", "name" : "Andrew" }
]
}
};
var dt = new Y.DataTable.Base({
columnset : [
{ key:"id", sortable: true },
{ key:"name", sortable: true }
],
summary : "User patched DataTable Instance",
recordset : mockresponse.response.results
});
dt.render('#example');
});
© 2006-2013 Yahoo! Inc. All rights reserved.
All code on this site is licensed under the BSD License unless stated otherwise.
About This Site · Security Contact Info