Telerik RadGrid: Freeze Column featue not working in IE8

12 posts, 0 answers
  1. Ranjan
    Ranjan avatar
    6 posts
    Member since:
    Jan 2012

    Posted 25 Aug 2012 Link to this post

    Freeze column fetature of RadGrid is not working correctly in IE8.
    1.    column size just become very large on scrolling
    2.    Freeze column does not work properly
    Please see my attached document which I captured from On-line resource you provided.
  2. Pavlina
    Admin
    Pavlina avatar
    6084 posts

    Posted 27 Aug 2012 Link to this post

    Hello,

    Can you send us the problematic code, so we can investigate the issue? Also make sure that UseStaticHeaders property is set to true.

    Kind regards,
    Pavlina
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
  3. UI for ASP.NET Ajax is Ready for VS 2017
  4. Ranjan
    Ranjan avatar
    6 posts
    Member since:
    Jan 2012

    Posted 31 Aug 2012 Link to this post

    Pavlina,
    If you will see my attached image it is showing the URL from where I am testing. Its from the Telerik Demo site.
    Please fix this issue.

    Thanks
    Ranjan
  5. Pavlina
    Admin
    Pavlina avatar
    6084 posts

    Posted 03 Sep 2012 Link to this post

    Hello Ranjan,

    I tried to replicate the problem you are facing with our online example in IE8, but to no avail. Please refer to the video below to see how the frozen columns demo is working on my side and let me know if I am missing something out while testing:
    http://screencast.com/t/lRDQOgQT


    All the best,
    Pavlina
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
  6. Nicolaï
    Nicolaï avatar
    160 posts
    Member since:
    Apr 2008

    Posted 09 Oct 2012 Link to this post

    Same here.
    It does not work on IE8. Headers scroll SOMEWHAT ok, but the content is skewed, when it works.
    Javascript error about Telerik...axd.
  7. Nicolaï
    Nicolaï avatar
    160 posts
    Member since:
    Apr 2008

    Posted 09 Oct 2012 Link to this post

    if((g>1&&h+g>=f)||(c.parentNode.className.indexOf("rgGroupHeader")!=-1&&c.className.indexOf("rgGroupCol")==-1)){if(!n){e.rows[m].cells[h].colSpan=e.rows[m].cells[h].colSpan-1;

    *self sensored rant about telerik not being x browser*

    EDIT:
    ---> SO.. IE8 does not like colSpan to be set to 0. Any fix???

    Creating a bug report, to add to my list of support tickets that start with "IE.." .
    This is the most disastrous bug I've encountered: people were editting records on the wrong columns because they were so skewed. My reputation is broken. Consequences are hitting me. All the managers, omg. You have no idea how hard it is to not start cursing. This one is having real consequences. I just saw a bonus jumping out the window.
  8. Pavlina
    Admin
    Pavlina avatar
    6084 posts

    Posted 11 Oct 2012 Link to this post

    Hi Nicolaï,

    May I ask you to open a formal support ticket and send us a sample runnable project where the described problem can be observed. We will debug it locally and will get back to you with additional information.

    Thank you.

    Regards,
    Pavlina
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
  9. Nicolaï
    Nicolaï avatar
    160 posts
    Member since:
    Apr 2008

    Posted 12 Oct 2012 Link to this post

    Hello,

    I did.. Here is the code to fix it:
    Telerik.Web.UI.Grid.hideShowCells = function(table, index, display, cols)
    {
         var totalVisibleCols = Telerik.Web.UI.Grid.getVisibleCols(cols);
         var tableView = $find(table.id);
         for (var i = 0, l = table.rows.length; i < l; i++)
         {
            var isDetailTable = false;
            var cellColSpan = 0;
            var cell = null;
            if (table.rows[i].cells.length != totalVisibleCols)
            {
                if (table.rows[i].cells.length == 1)
                {
                    table.rows[i].cells[0].colSpan = totalVisibleCols || 1;
                }
                else
                {
                    for (var j = 0; j < table.rows[i].cells.length; j++)
                    {
                        cell = table.rows[i].cells[j];
                        if (Telerik.Web.UI.Grid._trySetColSpanOnDetailTable(cell))
                        {
                             
                            if (tableView && !tableView._isHelperColumnType(tableView.get_columns()[index]._data.ColumnType))
                            {
                                isDetailTable = true;
                                break;   
                            }
                            break;
                        }
                        cellColSpan = cell.colSpan;
                        if ((cellColSpan > 1 && j + cellColSpan >= index) ||
                            (cell.parentNode.className.indexOf("rgGroupHeader") != -1 && cell.className.indexOf("rgGroupCol") == -1))
                        {
                            if(!display)
                            {
                                var colspan = table.rows[i].cells[j].colSpan - 1;
                                if (colspan <= 0) {
                                    colspan = 1;
                                }
                                table.rows[i].cells[j].colSpan = colspan;
                            }
                            else
                            {
                                table.rows[i].cells[j].colSpan = table.rows[i].cells[j].colSpan + 1;
                            }
                            break;
                        }
                    }
                }
            }
            else
            {
                for (var j = 0; j < table.rows[i].cells.length; j++)
                {
                    cell = table.rows[i].cells[j];
                    if (Telerik.Web.UI.Grid._trySetColSpanOnDetailTable(cell))
                    {
                        var tableView = $find(table.id);
                        if (tableView && !tableView._isHelperColumnType(tableView.get_columns()[index]._data.ColumnType))
                        {
                            isDetailTable = true;
                            break;   
                        }
                    }
                }
            }
     
            cell = table.rows[i].cells[index];
            var defaultColSpan = 1;
             
            if(!display && !isDetailTable)
            {          
                if(cell != null && cell.colSpan == defaultColSpan && cell.style.display != "none")
                {
                    cell.style.display = "none";
                    if(navigator.userAgent.toLowerCase().indexOf("msie") != -1 && navigator.userAgent.toLowerCase().indexOf("6.0") != -1)
                    {
                         Telerik.Web.UI.Grid._hideShowSelect(cell, display);
                    }
                }
            }
            else if (!isDetailTable)
            {
                if(cell != null && cell.colSpan == defaultColSpan && cell.style.display == "none")
                {
                    cell.style.display = (window.netscape)? "table-cell" : "";
                }
                 
                if(navigator.userAgent.toLowerCase().indexOf("msie") != -1 && navigator.userAgent.toLowerCase().indexOf("6.0") != -1)
                {
                     Telerik.Web.UI.Grid._hideShowSelect(cell, display);
                }
            }
        }
    }

    I've been told it will be part of Q3.
    So either change version, or use this code until the next version comes.


    EDIT: just got another email complaint from a user... With a screenshot of the broken grid, headers not aligning., and no javascript error showing in status bar.. I'm not sure yet, but I think it's because of grouping now., with scrolling..  Need to investigate it and fx..
  10. Telugu
    Telugu avatar
    5 posts
    Member since:
    Nov 2012

    Posted 27 Nov 2012 Link to this post

    Hi Nicolaï /All,

    I am facing same problem .i tried many ways but it is not working .
    could you send the code .Above code where we write  the function  which parameter we pass.

    better to send file  to my mail id telugu.praveen@gmail.com or post here .

    Any one help me to solve above problem.

    Thanks & Regards,
    Praveen
  11. Telugu
    Telugu avatar
    5 posts
    Member since:
    Nov 2012

    Posted 28 Nov 2012 Link to this post

    Hi Pavlina,

    http://screencast.com/t/lRDQOgQT

    above problem  in IE8. is it Solved in new version of telerik ?

    Any other solution for above problem.

    Please send.

    Thanks,
    Praveen.
  12. Pavlina
    Admin
    Pavlina avatar
    6084 posts

    Posted 30 Nov 2012 Link to this post

    Hello,

    The empty space which appears at the end of the grid in IE8 is caused by the fact that all columns has fixed widths set in pixels. To avoid it you can leave the last column without width and the empty space will not be visible. In the previous version this space is styled with Vista skin, but now this problem is fixed.

    All the best,
    Pavlina
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
  13. Bijender
    Bijender avatar
    4 posts
    Member since:
    Sep 2016

    Posted 11 Sep in reply to Ranjan Link to this post

    HI Ranjan,

    I know its very whats was the solution by way, any code fix you may have?

     

    Thanks,

    Bijender

Back to Top
UI for ASP.NET Ajax is Ready for VS 2017