dhtmlxGrid JS error in IE with Dynamic Smart Rendering

I am using dhtmlxGrid with dynamic smart rendering, using dhtmlxgrid_srnd.js v.2.5 build 91111. The grid works fine with 100,000 records in Firefox and Chrome. However, in IE8 a JavaScript error is encountered when scrolling a large distance. The error is within the function

dhtmlXGridObject.prototype._update_fillers() 

on the line

f[2].firstChild.style.height=parseFloat(f[2].firstChild.style.height)+right*this._srdh+"px";

The reported error is an invalid argument. The value of the right hand side of the expression is a large negative number, such as “-92323px”.

Example field values are:
parseFloat(f[2].firstChild.style.height) = 489497
right = -29091
this._srdh = 20
parseFloat(f[2].firstChild.style.height)+right*this._srdh+“px” = “-92323px”

Furthermore, the performance in IE8 is poor, with rows visibly and slowly added to the grid as the user slowly scrolls.

Further investigation found that IE8 worked OK with up to about 67,100 records, but started misbehaving with larger numbers than that. Any ideas how to address this problem?

To fix the issue add the next patch after other js files or at the end of dhtmlxgrid.js
ie_srnd_patch.zip (980 Bytes)

Thank you. That did the trick.

I’m experiencing what I believe is the same issue.

Browser: IE8
dhtmlxgrid: v 2.5 build 91111
Total number of rows: 44,682
Smart Rendering: Enabled

Problem: After scrolling down for a while, I eventually get an error: “Invalid Argument”. The problem occurs in _update_fillers() when this height is set:

f[2].firstChild.style.height=parseFloat(f[2].firstChild.style.height)+right*this._srdh+"px";

As seen by the original poster, the value on the right when the failure occurs is a “large” (small) negative number (e.g., -1695066). I tried hardcoding the value which resolves the problem, but the scrolling behavior is a little odd.

I tried applying the patch attached to this forum post. I verified that the new version of renderDataset() is being called for some of my grids, but it is not getting called for the grid for which I’m getting the error.

I do not see this error in Firefox. I tried disabling smart rendering, but that did not help. I also verified the actual row height and I’m calling setAwaitedRowHeight() with the actual row height (38). While I never see the error in Firefox, eventually, there are more and more blank rows at the bottom of the grid as I scroll (in Firefox).

I guess I have two questions:
1.) Is there something I need to do so my grid calls renderDataset() (so that the patch actually resolves my problem).
2.) Is there an updated patch that I can try?

Thanks!

Please, try to update your version of the dhtmlxGrid. If the problem still occurs for you please, provide with a demo link or with a simple complete demo, where the problem can be reconstructed locally.