Opened 9 years ago
Closed 8 years ago
#14732 closed defect (patchwelcome)
dojox.grid.EnhancedGrid + Pagination -- Stack overflow error in IE8
Reported by: | Seba | Owned by: | Evan |
---|---|---|---|
Priority: | undecided | Milestone: | tbd |
Component: | DojoX Grid | Version: | 1.7.1 |
Keywords: | Cc: | ||
Blocked By: | Blocking: |
Description
When using dojox.grid.EnhancedGrid? + Pagination plugin + dojox.data.QueryReadStore? I get Stack overflow errors in IE8 after clicking one of the bottom links (pageSizes, pageStepper, gotoButton).
There are no errors when other stores are used.
I will try tu submit 2 files so this error can be reproduced. First one is a modified test file dojox/grid/tests/enchanced/test_enhanced_grid_pagination.html The second one is a test JSON data source for the QueryReadStore?.
My configuration:
OS: Windows XP SP3 HomeEdition? IE: IE 8.0.6001.18702 (The same happens under IE7)
Attachments (5)
Change History (16)
Changed 9 years ago by
Attachment: | qrssource.php added |
---|
Changed 9 years ago by
Attachment: | test_enhanced_grid_pagination.html added |
---|
comment:1 Changed 9 years ago by
comment:3 Changed 9 years ago by
Working well for me on IE7+, when clicked on any links in the pagination bar, EDG works normally as the snapshot shown. Anything I missed?
comment:4 Changed 9 years ago by
Well I tested it on 2 different computers under IE7,8,9 and see the same error. This is just a popup message saying "Stack overflow at line 1". after closing the popup each action is completed correctly (pageSizes, pageStepper, gotoButton).
Please check your error console maybe there is something there.
comment:5 Changed 9 years ago by
Tested it on another machine without Utilu IE Collection and I see the same error but visible only inside script console. Probably Your IE doesn't display this error inside popup dialog.
comment:6 Changed 9 years ago by
Tested with Dojo 1.7.x, IE 8, "Out of stack space". While testing with debugger, following line(in dojo.js) has issue
return _384[_385].apply(_384,arguments [])
Also tested with Firefox 10.0.1(firebug enabled), crashes it completely.
Sample piece of code for enabling pagination in Grid
grid = new dojox.grid.EnhancedGrid?({
id: 'grid', store: store, editable: true, rowsPerPage: 20, structure: layout, plugins: {
pagination: {
description: true, sizeSwitch: true,
pageStepper: true, gotoButton: true, maxPageStep: 4, position: "bottom"
}
}}, document.createElement('div'));
comment:7 follow-up: 8 Changed 9 years ago by
With a project specific Store, I have the same error.
I have found it is an infinite loop on Pagination.js line 287 : "_this._originalResize();" that calls itself (line 284 : "g.resize = ...").
Commenting lines 284 to 288 solves the problem in my case, and grid still resizes correctly.
Is this "resize" method redefinition really useful ?
comment:9 Changed 9 years ago by
in Pagination.js
285 near line Replacement for
postCreate: function(){ this.inherited(arguments); var _this = this, g = this.grid; this.plugin.connect(g, "_resize", function(){ _this._resetGridHeight(); }); this._originalResize = function(){ g._resize(); }; g.resize = function(changeSize, resultSize){ _this._changeSize = changeSize; _this._resultSize = resultSize; _this._originalResize(); }; this.focus = _Focus(this); this._placeSelf(); },
comment:10 Changed 8 years ago by
comment:11 Changed 8 years ago by
Resolution: | → patchwelcome |
---|---|
Status: | new → closed |
I see no errors under FF3+, Chrome 16, Opera 11.61