1. #1
    Sencha User
    Join Date
    Sep 2012
    Posts
    3
    Vote Rating
    3
    pturley is on a distinguished road

      1  

    Default Unanswered: Editable Grids slow to render in ie8

    Unanswered: Editable Grids slow to render in ie8


    Hi,

    I am developing an application where a single screen may have up to four editable grids. When I run these screens in ie8 the response time can be anything between 2 and 10 seconds. If I run the same screen in firefox or chrome the response times are between 1 and 2 seconds.

    I have attached an example of the code that we are developing and wonder if anyone could see if there is anything I am doing wrong to cause such a performance issue in ie. Just for the example I have rendered the same grid four times to you can get the idea.

    This is my simple html file

    Code:
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>t7210</title>
    
        <link rel="stylesheet" type="text/css" href="http://localhost:8080/dev/extjs_4_1/css/ext-all.css"/>
        <link rel="stylesheet" type="text/css" href="http://localhost:8080/dev/extjs_4_1/ux/css/CheckHeader.css" />
        <link rel="stylesheet" type="text/css" href="http://localhost:8080/dev/extjs_4_1/examples.css" />
    
        <script type="text/javascript" src="http://localhost:8080/dev/extjs_4_1/js/ext-all.js"></script>
    
        <script type="text/javascript">
            document.write('ExtJS: '+Ext.versions.extjs.version);
        </script>
    
        <script type="text/javascript" src="http://localhost:8080/dev/extjs/pt/TaskContributor.js"></script>
    
    <script>
    
    Ext.Loader.setConfig({
        enabled : true
    });
    Ext.Loader.setPath('Ext.ux', 'http://localhost:8080/dev/extjs_4_1/ux/');
    
    Ext.require([
            'Ext.ux.CheckColumn',
            'Ext.ux.RowExpander',
            'Ext.ux.form.SearchField'
        ]);
            //build_task_contributor_grid(123);
                  //build_task_progress_grid(123);
                 // build_task_review_grid(123);
                 // build_task_contact_grid(123);
    
    </script>
    </head>
    <body>
    <style>
         #TASK_CONTRIBUTOR-grid{ width: 600; border: 3px; float: left;}
    </style>
    <div id="TASK_CONTRIBUTOR-grid"></div>
    </body>
    <script>
    Ext.onReady(function () {
    console.log('Call Task Contributor '+Date());
          build_task_contributor_grid(513);
    console.log('End Call Task Contributor '+Date());
    });
         </script>
    </html>
    This is the javascript file it is calling which includes some dummy functions used by the store.

    Code:
    function get_url_filterdata(){
    
    }
    
    function dateFormatRenderer(value) {
        if (typeof value == 'string'){
           return value;
        }else{
            return value ? Ext.Date.dateFormat(value, 'd/m/Y') : '';
        }
    }
    
    function build_task_contributor_grid(pId) {
    
    //Ext.onReady(function () {    
    console.log('Define Model '+Date());
    // Define our data model
        Ext.define('TASK_CONTRIBUTOR', {
            extend : 'Ext.data.Model',
            fields : ['CONTRIBUTOR_ID','TASK_ID','SERVICE_ID','CONTEXT','CONTEXT_ID','CONTEXT_X_ID','START_DATE','END_DATE','ROLE','MD5']
        });
    
    console.log('Define Store '+Date());
    //Define the data store    
        TaskContributorStore = Ext.create('Ext.data.Store', {
                // destroy the store if the grid is destroyed
                autoDestroy : false,
                model : 'TASK_CONTRIBUTOR',
                remoteSort : true,
                pageSize : 10,
                storeid : 'TASK_CONTRIBUTOR',
                proxy : {
                    type : 'ajax',
                    url : get_url_filterdata,
                    extraParams : {
                    x01 : 'TASK_CONTRIBUTOR',
                    x05 : 'TASK_ID = ' + pId
                    },
                    pageParam : undefined,
                    startParam : 'x02',
                    limitParam : 'x03',
                    filterParam : 'x04',
                    noCache : false,
                    reader : {
                        type : 'json',
                        root : 'ROWSET',
                        totalProperty : 'totalcount'
                    }
                }
            });
    
    console.log('Define Grid Edit '+Date());
        Ext.define('GridRowEditing', {
            extend: 'Ext.grid.plugin.RowEditing',
                alias: ['plugin.GridRowEditing'],
                requires: [
                        'Ext.grid.RowEditor'
                          ],
                clicksToMoveEditor : 1,
                autoCancel : false,
                listeners : {
                    'edit' : function (editor, e) {
        
                        var grid = e.grid;
                        var record = e.record;
                        var statusMsg = 'Status';
        
                        //e.grid.store.storeid holds the context name!
                        gMsg = update_record(e.grid.store.storeid, record.data);
                        gMsg = jQuery.parseJSON(gMsg);
                        //set back record the MD5 as this would have changed during the update
                        for(i=0; i<gMsg.length; i++)
                        {
                            //e.record.set(gMsg[i].ITEM_NAME, gMsg[i].ITEM_MSG);
                            if(gMsg[i].ITEM_NAME == 'MD5')
                            {
                                e.record.set(gMsg[i].ITEM_NAME, gMsg[i].ITEM_MSG);
                            }
                            if(gMsg[i].ITEM_NAME == 'CVW_PAGE_LEVEL')
                            {
                                statusMsg = gMsg[i].ITEM_MSG;
                            }                            
                        }
                        Ext.MessageBox.alert('Status', statusMsg);//gMsg[0].ITEM_MSG);
                        e.record.commit();
                    }
                }
            });
    
    // Define the Grid Editor
    
        var TaskContributorrowEditing = Ext.create('GridRowEditing');
    
    
    console.log('Build Grid 1 '+Date());
    //create the grid and specify what fields we want
        var TaskContributor1 = Ext.create('Ext.grid.Panel', {
                store : TaskContributorStore,
                autoDestroy : false,
                minHeight : 300,
                width : 600,
                title : 'Task Contributors',
                frame : true,
                columns : [{
                            header: 'CONTRIBUTOR_ID',
                            dataIndex: 'CONTRIBUTOR_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'TASK_ID',
                            dataIndex: 'TASK_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'SERVICE_ID',
                            dataIndex: 'SERVICE_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT',
                            dataIndex: 'CONTEXT',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_ID',
                            dataIndex: 'CONTEXT_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_X_ID',
                            dataIndex: 'CONTEXT_X_ID',
                            flex: 1,
                            hidden: true
                        },{                    
                            header : 'Start Date',
                            dataIndex : 'START_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        allowBlank : false,
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!',
                                        maxValue : Ext.Date.format(new Date(), 'd/m/Y')
                                    }                                    
                        },{
                            header : 'End Date',
                            dataIndex : 'END_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!'
                                    }
                        },{
                            header: 'Role',
                            dataIndex: 'ROLE',
                            flex: 1,
                            editor: {
                                        id : 'editROLE',
                                        xtype : 'textfield',
                                        maxLength : 8,
                                        allowBlank : false
                                    }
                        },{
                            header: 'MD5',
                            dataIndex: 'MD5',
                            flex: 1,
                            hidden: true
                        }],
                renderTo : 'TASK_CONTRIBUTOR-grid',
                dockedItems : [{
                        dock : 'top',
                        xtype : 'toolbar',
                        items : [{
                                width : 200,
                                fieldLabel : 'Search',
                                labelWidth : 50,
                                xtype : 'searchfield',
                                store : TaskContributorStore
                            }, '->', {
                                xtype : 'component',
                                itemId : 'status',
                                tpl : 'Matching threads: {count}',
                                style : 'margin-right:5px'
                            }
                        ]
                    }
                ],
                tbar : [{
                        text : 'Add Task Contributor Details',
                        iconCls : 'TASK_CONTRIBUTOR-add',
                        handler : function () {
                            TaskContributorrowEditing.cancelEdit();
    
                            // Create a record instance through the ModelManager
                            var r = Ext.ModelManager.create({                        
                                                                CONTRIBUTOR_ID : ''
                                                                ,TASK_ID : ''
                                                                ,SERVICE_ID : ''
                                                                ,CONTEXT : ''
                                                                ,CONTEXT_ID : ''
                                                                ,CONTEXT_X_ID : ''
                                                                ,START_DATE : ''
                                                                ,END_DATE : ''
                                                                ,ROLE : ''
                                                                ,MD5 : ''
                                                            }
                                                            , 'TASK_CONTRIBUTOR');
    
                            TaskContributorStore.insert(0, r);
                            TaskContributorrowEditing.startEdit(0, 0);
                        }
                    }, {
                        itemId : 'removeTASK_CONTRIBUTOR',
                        text : 'Remove Task Contributor',
                        iconCls : 'TASK_CONTRIBUTOR-remove',
                        handler : function () {
                                var sm = grid.getSelectionModel();
                                var rec = grid.getSelectionModel().getSelection();
                                //call the delete record function
                                //delete_record('TASK_CONTRIBUTOR',rec[0].data);
                                TaskProgressrowEditing.cancelEdit();
                                TaskProgressStore.remove(sm.getSelection());
                                sm.select(0);
                        },
                        disabled : true
                    }
                ],
                plugins : [TaskContributorrowEditing],
                bbar : Ext.create('Ext.PagingToolbar', {
                    store : TaskContributorStore,
                    displayInfo : true,
                    displayMsg : 'Displaying <b>{0} - {1} of {2}</b>',
                    emptyMsg : "No Task Contributors to display"
                }),
                listeners : {
                    'selectionchange' : function (view, records) {
                        grid.down('#removeTASK_CONTRIBUTOR').setDisabled(!records.length);
                    }
                }
                
            });
        //TaskContributorStore.loadPage(1);
    
    console.log('Build Grid 2 '+Date());
    
        var TaskContributor2 = Ext.create('Ext.grid.Panel', {
                store : TaskContributorStore,
                autoDestroy : false,
                minHeight : 300,
                width : 600,
                title : 'Task Contributors',
                frame : true,
                columns : [{
                            header: 'CONTRIBUTOR_ID',
                            dataIndex: 'CONTRIBUTOR_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'TASK_ID',
                            dataIndex: 'TASK_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'SERVICE_ID',
                            dataIndex: 'SERVICE_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT',
                            dataIndex: 'CONTEXT',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_ID',
                            dataIndex: 'CONTEXT_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_X_ID',
                            dataIndex: 'CONTEXT_X_ID',
                            flex: 1,
                            hidden: true
                        },{                    
                            header : 'Start Date',
                            dataIndex : 'START_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        allowBlank : false,
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!',
                                        maxValue : Ext.Date.format(new Date(), 'd/m/Y')
                                    }                                    
                        },{
                            header : 'End Date',
                            dataIndex : 'END_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!'
                                    }
                        },{
                            header: 'Role',
                            dataIndex: 'ROLE',
                            flex: 1,
                            editor: {
                                        id : 'editROLE',
                                        xtype : 'textfield',
                                        maxLength : 8,
                                        allowBlank : false
                                    }
                        },{
                            header: 'MD5',
                            dataIndex: 'MD5',
                            flex: 1,
                            hidden: true
                        }],
                renderTo : 'TASK_CONTRIBUTOR-grid',
                dockedItems : [{
                        dock : 'top',
                        xtype : 'toolbar',
                        items : [{
                                width : 200,
                                fieldLabel : 'Search',
                                labelWidth : 50,
                                xtype : 'searchfield',
                                store : TaskContributorStore
                            }, '->', {
                                xtype : 'component',
                                itemId : 'status',
                                tpl : 'Matching threads: {count}',
                                style : 'margin-right:5px'
                            }
                        ]
                    }
                ],
                tbar : [{
                        text : 'Add Task Contributor Details',
                        iconCls : 'TASK_CONTRIBUTOR-add',
                        handler : function () {
                            TaskContributorrowEditing.cancelEdit();
    
                            // Create a record instance through the ModelManager
                            var r = Ext.ModelManager.create({                        
                                                                CONTRIBUTOR_ID : ''
                                                                ,TASK_ID : ''
                                                                ,SERVICE_ID : ''
                                                                ,CONTEXT : ''
                                                                ,CONTEXT_ID : ''
                                                                ,CONTEXT_X_ID : ''
                                                                ,START_DATE : ''
                                                                ,END_DATE : ''
                                                                ,ROLE : ''
                                                                ,MD5 : ''
                                                            }
                                                            , 'TASK_CONTRIBUTOR');
    
                            TaskContributorStore.insert(0, r);
                            TaskContributorrowEditing.startEdit(0, 0);
                        }
                    }, {
                        itemId : 'removeTASK_CONTRIBUTOR',
                        text : 'Remove Task Contributor',
                        iconCls : 'TASK_CONTRIBUTOR-remove',
                        handler : function () {
                                var sm = grid.getSelectionModel();
                                var rec = grid.getSelectionModel().getSelection();
                                //call the delete record function
                                //delete_record('TASK_CONTRIBUTOR',rec[0].data);
                                TaskProgressrowEditing.cancelEdit();
                                TaskProgressStore.remove(sm.getSelection());
                                sm.select(0);
                        },
                        disabled : true
                    }
                ],
                plugins : [TaskContributorrowEditing],
                bbar : Ext.create('Ext.PagingToolbar', {
                    store : TaskContributorStore,
                    displayInfo : true,
                    displayMsg : 'Displaying <b>{0} - {1} of {2}</b>',
                    emptyMsg : "No Task Contributors to display"
                }),
                listeners : {
                    'selectionchange' : function (view, records) {
                        grid.down('#removeTASK_CONTRIBUTOR').setDisabled(!records.length);
                    }
                }
                
            });
    
    console.log('Build Grid 3 '+Date());
    
        var TaskContributor3 = Ext.create('Ext.grid.Panel', {
                store : TaskContributorStore,
                autoDestroy : false,
                minHeight : 300,
                width : 600,
                title : 'Task Contributors',
                frame : true,
                columns : [{
                            header: 'CONTRIBUTOR_ID',
                            dataIndex: 'CONTRIBUTOR_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'TASK_ID',
                            dataIndex: 'TASK_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'SERVICE_ID',
                            dataIndex: 'SERVICE_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT',
                            dataIndex: 'CONTEXT',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_ID',
                            dataIndex: 'CONTEXT_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_X_ID',
                            dataIndex: 'CONTEXT_X_ID',
                            flex: 1,
                            hidden: true
                        },{                    
                            header : 'Start Date',
                            dataIndex : 'START_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        allowBlank : false,
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!',
                                        maxValue : Ext.Date.format(new Date(), 'd/m/Y')
                                    }                                    
                        },{
                            header : 'End Date',
                            dataIndex : 'END_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!'
                                    }
                        },{
                            header: 'Role',
                            dataIndex: 'ROLE',
                            flex: 1,
                            editor: {
                                        id : 'editROLE',
                                        xtype : 'textfield',
                                        maxLength : 8,
                                        allowBlank : false
                                    }
                        },{
                            header: 'MD5',
                            dataIndex: 'MD5',
                            flex: 1,
                            hidden: true
                        }],
                renderTo : 'TASK_CONTRIBUTOR-grid',
                dockedItems : [{
                        dock : 'top',
                        xtype : 'toolbar',
                        items : [{
                                width : 200,
                                fieldLabel : 'Search',
                                labelWidth : 50,
                                xtype : 'searchfield',
                                store : TaskContributorStore
                            }, '->', {
                                xtype : 'component',
                                itemId : 'status',
                                tpl : 'Matching threads: {count}',
                                style : 'margin-right:5px'
                            }
                        ]
                    }
                ],
                tbar : [{
                        text : 'Add Task Contributor Details',
                        iconCls : 'TASK_CONTRIBUTOR-add',
                        handler : function () {
                            TaskContributorrowEditing.cancelEdit();
    
                            // Create a record instance through the ModelManager
                            var r = Ext.ModelManager.create({                        
                                                                CONTRIBUTOR_ID : ''
                                                                ,TASK_ID : ''
                                                                ,SERVICE_ID : ''
                                                                ,CONTEXT : ''
                                                                ,CONTEXT_ID : ''
                                                                ,CONTEXT_X_ID : ''
                                                                ,START_DATE : ''
                                                                ,END_DATE : ''
                                                                ,ROLE : ''
                                                                ,MD5 : ''
                                                            }
                                                            , 'TASK_CONTRIBUTOR');
    
                            TaskContributorStore.insert(0, r);
                            TaskContributorrowEditing.startEdit(0, 0);
                        }
                    }, {
                        itemId : 'removeTASK_CONTRIBUTOR',
                        text : 'Remove Task Contributor',
                        iconCls : 'TASK_CONTRIBUTOR-remove',
                        handler : function () {
                                var sm = grid.getSelectionModel();
                                var rec = grid.getSelectionModel().getSelection();
                                //call the delete record function
                                //delete_record('TASK_CONTRIBUTOR',rec[0].data);
                                TaskProgressrowEditing.cancelEdit();
                                TaskProgressStore.remove(sm.getSelection());
                                sm.select(0);
                        },
                        disabled : true
                    }
                ],
                plugins : [TaskContributorrowEditing],
                bbar : Ext.create('Ext.PagingToolbar', {
                    store : TaskContributorStore,
                    displayInfo : true,
                    displayMsg : 'Displaying <b>{0} - {1} of {2}</b>',
                    emptyMsg : "No Task Contributors to display"
                }),
                listeners : {
                    'selectionchange' : function (view, records) {
                        grid.down('#removeTASK_CONTRIBUTOR').setDisabled(!records.length);
                    }
                }
                
            });
    console.log('Build Grid 4 '+Date());
        var TaskContributor4 = Ext.create('Ext.grid.Panel', {
                store : TaskContributorStore,
                autoDestroy : false,
                minHeight : 300,
                width : 600,
                title : 'Task Contributors',
                frame : true,
                columns : [{
                            header: 'CONTRIBUTOR_ID',
                            dataIndex: 'CONTRIBUTOR_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'TASK_ID',
                            dataIndex: 'TASK_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'SERVICE_ID',
                            dataIndex: 'SERVICE_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT',
                            dataIndex: 'CONTEXT',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_ID',
                            dataIndex: 'CONTEXT_ID',
                            flex: 1,
                            hidden: true
                        },{
                            header: 'CONTEXT_X_ID',
                            dataIndex: 'CONTEXT_X_ID',
                            flex: 1,
                            hidden: true
                        },{                    
                            header : 'Start Date',
                            dataIndex : 'START_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        allowBlank : false,
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!',
                                        maxValue : Ext.Date.format(new Date(), 'd/m/Y')
                                    }                                    
                        },{
                            header : 'End Date',
                            dataIndex : 'END_DATE',
                            width : 90,
                            minValue : '01/01/2001',
                            format : 'd/m/Y',
                            renderer : dateFormatRenderer,
                            field : {
                                        xtype : 'datefield',
                                        format : 'd/m/Y',
                                        minValue : '01/01/2001',
                                        minText : 'Start date cannot be before today!'
                                    }
                        },{
                            header: 'Role',
                            dataIndex: 'ROLE',
                            flex: 1,
                            editor: {
                                        id : 'editROLE',
                                        xtype : 'textfield',
                                        maxLength : 8,
                                        allowBlank : false
                                    }
                        },{
                            header: 'MD5',
                            dataIndex: 'MD5',
                            flex: 1,
                            hidden: true
                        }],
                renderTo : 'TASK_CONTRIBUTOR-grid',
                dockedItems : [{
                        dock : 'top',
                        xtype : 'toolbar',
                        items : [{
                                width : 200,
                                fieldLabel : 'Search',
                                labelWidth : 50,
                                xtype : 'searchfield',
                                store : TaskContributorStore
                            }, '->', {
                                xtype : 'component',
                                itemId : 'status',
                                tpl : 'Matching threads: {count}',
                                style : 'margin-right:5px'
                            }
                        ]
                    }
                ],
                tbar : [{
                        text : 'Add Task Contributor Details',
                        iconCls : 'TASK_CONTRIBUTOR-add',
                        handler : function () {
                            TaskContributorrowEditing.cancelEdit();
    
                            // Create a record instance through the ModelManager
                            var r = Ext.ModelManager.create({                        
                                                                CONTRIBUTOR_ID : ''
                                                                ,TASK_ID : ''
                                                                ,SERVICE_ID : ''
                                                                ,CONTEXT : ''
                                                                ,CONTEXT_ID : ''
                                                                ,CONTEXT_X_ID : ''
                                                                ,START_DATE : ''
                                                                ,END_DATE : ''
                                                                ,ROLE : ''
                                                                ,MD5 : ''
                                                            }
                                                            , 'TASK_CONTRIBUTOR');
    
                            TaskContributorStore.insert(0, r);
                            TaskContributorrowEditing.startEdit(0, 0);
                        }
                    }, {
                        itemId : 'removeTASK_CONTRIBUTOR',
                        text : 'Remove Task Contributor',
                        iconCls : 'TASK_CONTRIBUTOR-remove',
                        handler : function () {
                                var sm = grid.getSelectionModel();
                                var rec = grid.getSelectionModel().getSelection();
                                //call the delete record function
                                //delete_record('TASK_CONTRIBUTOR',rec[0].data);
                                TaskProgressrowEditing.cancelEdit();
                                TaskProgressStore.remove(sm.getSelection());
                                sm.select(0);
                        },
                        disabled : true
                    }
                ],
                plugins : [TaskContributorrowEditing],
                bbar : Ext.create('Ext.PagingToolbar', {
                    store : TaskContributorStore,
                    displayInfo : true,
                    displayMsg : 'Displaying <b>{0} - {1} of {2}</b>',
                    emptyMsg : "No Task Contributors to display"
                }),
                listeners : {
                    'selectionchange' : function (view, records) {
                        grid.down('#removeTASK_CONTRIBUTOR').setDisabled(!records.length);
                    }
                }
                
            });
    
    //});
    }
    Response Times


    IE 8

    LOG: 1 Wed Oct 24 17:47:25 2012
    LOG: Define Model Wed Oct 24 17:47:25 2012
    LOG: Define Store Wed Oct 24 17:47:25 2012
    LOG: Define Grid Edit Wed Oct 24 17:47:25 2012
    LOG: Build Grid 1 Wed Oct 24 17:47:25 2012
    LOG: Build Grid 2 Wed Oct 24 17:47:25 2012
    LOG: Build Grid 3 Wed Oct 24 17:47:26 2012
    LOG: Build Grid 4 Wed Oct 24 17:47:26 2012
    LOG: 2 Wed Oct 24 17:47:27 2012

    LOG: 1 Wed Oct 24 17:47:31 2012
    LOG: Define Model Wed Oct 24 17:47:31 2012
    LOG: Define Store Wed Oct 24 17:47:31 2012
    LOG: Define Grid Edit Wed Oct 24 17:47:31 2012
    LOG: Build Grid 1 Wed Oct 24 17:47:31 2012
    LOG: Build Grid 2 Wed Oct 24 17:47:31 2012
    LOG: Build Grid 3 Wed Oct 24 17:47:32 2012
    LOG: Build Grid 4 Wed Oct 24 17:47:33 2012
    LOG: 2 Wed Oct 24 17:47:33 2012

    LOG: 1 Wed Oct 24 17:47:35 2012
    LOG: Define Model Wed Oct 24 17:47:35 2012
    LOG: Define Store Wed Oct 24 17:47:35 2012
    LOG: Define Grid Edit Wed Oct 24 17:47:35 2012
    LOG: Build Grid 1 Wed Oct 24 17:47:35 2012
    LOG: Build Grid 2 Wed Oct 24 17:47:37 2012
    LOG: Build Grid 3 Wed Oct 24 17:47:37 2012
    LOG: Build Grid 4 Wed Oct 24 17:47:39 2012
    LOG: 2 Wed Oct 24 17:47:39 2012

    LOG: 1 Wed Oct 24 17:47:41 2012
    LOG: Define Model Wed Oct 24 17:47:41 2012
    LOG: Define Store Wed Oct 24 17:47:41 2012
    LOG: Define Grid Edit Wed Oct 24 17:47:41 2012
    LOG: Build Grid 1 Wed Oct 24 17:47:41 2012
    LOG: Build Grid 2 Wed Oct 24 17:47:42 2012
    LOG: Build Grid 3 Wed Oct 24 17:47:42 2012
    LOG: Build Grid 4 Wed Oct 24 17:47:43 2012
    LOG: 2 Wed Oct 24 17:47:44 2012


    Firefox

    1 Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    Define Model Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    Define Store Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    Define Grid Edit Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    Build Grid 1 Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    Build Grid 2 Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    Build Grid 3 Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    Build Grid 4 Wed Oct 24 2012 17:48:37 GMT+0100 (GMT Daylight Time)
    2 Wed Oct 24 2012 17:48:38 GMT+0100 (GMT Daylight Time)


    1 Wed Oct 24 2012 17:49:09 GMT+0100 (GMT Daylight Time)
    Define Model Wed Oct 24 2012 17:49:09 GMT+0100 (GMT Daylight Time)
    Define Store Wed Oct 24 2012 17:49:09 GMT+0100 (GMT Daylight Time)
    Define Grid Edit Wed Oct 24 2012 17:49:09 GMT+0100 (GMT Daylight Time)
    Build Grid 1 Wed Oct 24 2012 17:49:09 GMT+0100 (GMT Daylight Time)
    Build Grid 2 Wed Oct 24 2012 17:49:09 GMT+0100 (GMT Daylight Time)
    Build Grid 3 Wed Oct 24 2012 17:49:10 GMT+0100 (GMT Daylight Time)
    Build Grid 4 Wed Oct 24 2012 17:49:10 GMT+0100 (GMT Daylight Time)
    2 Wed Oct 24 2012 17:49:10 GMT+0100 (GMT Daylight Time)


    Any help/tips would be greatly appreciated.

    Cheers

    Paul

  2. #2
    Sencha - Senior Forum Manager mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    36,801
    Answers
    3467
    Vote Rating
    834
    mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute mitchellsimoens has a reputation beyond repute

      0  

    Default


    IE will be slower than Firefox and Chrome. How many records are in the store?
    Mitchell Simoens @SenchaMitch
    Sencha Inc, Senior Forum Manager
    ________________
    Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
    https://github.com/mitchellsimoens

    Think my support is good? Get more personalized support via a support subscription. https://www.sencha.com/store/

    Need more help with your app? Hire Sencha Services services@sencha.com

    Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is in print!

    When posting code, please use BBCode's CODE tags.

  3. #3
    Sencha User
    Join Date
    Sep 2012
    Posts
    3
    Vote Rating
    3
    pturley is on a distinguished road

      2  

    Default


    Hi realise IE will be slower that other browsers, but that is not something I can suggest as a resolution to the product users.

    The store is not being loaded in the code above, it has been commented out.

    Regards

    Paul

Thread Participants: 1

Turkiyenin en sevilen filmlerinin yer aldigi xnxx internet sitemiz olan ve porn sex tarzi bir site olan mobil porno izle sitemiz gercekten dillere destan bir durumda herkesin sevdigi bir site olarak tarihe gececege benziyor. Sitenin en belirgin ozelliklerinden birisi de Turkiyede gercekten kaliteli ve muntazam, duzenli porno izle siteleri olmamasidir. Bu yuzden iste. Ayrica en net goruntu kalitesine sahip adresinde yayinlanmaktadir. Mesela diğer sitelerimizden bahsedecek olursak, en iyi hd porno video arşivine sahip bir siteyiz. "The Best anal porn videos and slut anus, big asses movies set..." hd porno faketaxi