iSeller Commerce
iSeller POS Retail
iSeller POS F&B
iSeller POS Express
Crosslight
WebUI
ClientUI
What's New
Download Trial
Web Solution
Mobile Solution
Enterprise Solution
Custom Development
Blog
Community
Latest Development Blogs
ForumPostTopic
Browse By Tag
Seeing that I cannot get a response from Intersoft support, I'll post my issue here. Basically, I have recently upgraded to Webgrid 9 (9.0.7200.1) and WebUI Framework 3.0.5000. I have a number of fixed height Webgrids, which render correctly in the latest versions of Firefox, Chrome, and IE10, but not in IE11. Under IE 11, the HTML of the grid renders as it does for all other browsers, however the client script which runs on page load detects the browser as "IE" and therefore runs client script which fails trying to set the height of dvTB_Webgrid1_, based on the height of the Webgrid1_of div. You can see an example here:
https://webdev.fultonhomes.com/phindall/selectedoptions2/viewoptions.aspx?proj=ff00t&unit=0052
As you can see, I'm running under the HTML5 DOCTYPE and with RederingMode="HTML5".
Here's a little more detail:
My investigation reveals the following is the problem. Under RenderingMode="HTML5" Webgrid renders a series of nested DIVs, with the highest level one being Webgrid1_of. On page load, Webgrid runs through a series of client scripts to set up the grid layout. Among those is a function called AssignInitialHeight. AssignInitialHeight detects both IE10 and IE11 as “IE” (IS.ie==true) and sets forth to manually calculate the height of dvTB_Webgrid1_. Within this function, another function (WGUIEngine.OnGridResize) is called. Within OnGridResize, the function WGUIEngine.GetTableBodyHeight(b) is called with b=dvTB_Webgrid1_. GetTableBodyHeight looks to the style of the parent div of the Webgrid (Webgrid1_of), to get this height. On IE10, this returns the height value that was set when instantiating the WebGrid:
<ISWebGrid:WebGrid ID="WebGrid1" runat="server" width="730" Height="470" RuntimeLicenseKey="0LAC4-1B0D-OTNB8" RenderingMode="HTML5" >
However, under IE11 the function returns NaN. Looking at the rendered HTML reveals why. . .
IE 10: <div id="WebGrid1_of" style="position:relative; ;height: 470px;width: 730px;">
IE 11: <div id="WebGrid1_of" style="position:relative; ">
Interestingly, under Chrome and Firefox, the “Webgrid1_of” div renders as it does in IE11, but of course the client ssript does not detect these as “IE.”
It appears from the above that this may be a conflict between the server-side grid rendering and the client script. Under IE11, the server side renders the grid as it does for all other modern browsers. However, the client side script detects IE11 as “IE” and therefore runs IE-specific script, which fails.
I worked closely with Patrick Hindall. The reported problem was caused by an update to .NET 4.0 which causing IE11 is not recognized as IE.
The solution was found by Patrick. Thank you, Patrick! :)
Apparently, there is an update to .NET 4.0 which specifically deals with this issue. Out of the box, .NET 4.0 does not recognize IE11 as “IE.” After the following update is applied, it does. https://support.microsoft.com/en-us/kb/2836939. After applying this update to .NET 4.0 on the hosting server, the page renders correctly under IE11.
Apparently, there is an update to .NET 4.0 which specifically deals with this issue. Out of the box, .NET 4.0 does not recognize IE11 as “IE.” After the following update is applied, it does.
https://support.microsoft.com/en-us/kb/2836939.
After applying this update to .NET 4.0 on the hosting server, the page renders correctly under IE11.
or
Choose this if you're already a member of Intersoft Community Forum. You can link your OpenID account to your existing Intersoft Social ID.
Choose this if you don't have an Intersoft account yet. Your authenticated OpenID will be automatically linked to your new Intersoft account.
Enter your Wordpress Blogname