Après le chargement du magasin, sélectionner et afficher la ligne correspondante dans la grille fonctionne dans Chrome, pas sous IE

Je suppose que je dois être en train de faire quelque chose de mal ici. J'ai un GridPanel qui reçoit les données à partir d'un Magasin. Le magasin dispose d'un écouteur sur le load événement, qui sélectionne la ligne 8 de la grille de sélection du modèle et tente de l'amener à se concentrer.

En Chrome (actuellement la version 33) cela fonctionne et l'enregistrement spécifié est visible.
Dans IE (version 11), cela ne fonctionne pas. Au moment de la alert('pause'); déclaration, la grille est visible avec la ligne spécifiée visible. Mais après avoir cliqué loin le message d'alerte, la grille semble être de faire quelque chose, provoquer, après qu'il n'en montrer que les premiers rangs.

Ext.onReady(function() {
    Ext.QuickTips.init();

    //create the data store
    var store = new Ext.data.JsonStore({
        autoDestroy: true,
        proxy: new Ext.data.HttpProxy({url: "/Home/PersonList", method: "POST"}),
        fields: ["First", "Last", "Company", "Email"],
        autoLoad: true,
        listeners: {
            load: function(s, r, o) {
                console.log('store loaded');
                grid.getSelectionModel().selectRow(8);
                grid.getView().focusRow(8);
                alert('pause');
            }
        }
    });

    //create the Grid
    var grid = new Ext.grid.GridPanel({
        store: store,
        id: 'grid',
        columns: [{header: 'Company', dataIndex: 'Company'},
            {header: 'First name', dataIndex: 'First'},
            {header: 'Last name', dataIndex: 'Last'},
            {header: 'Email',dataIndex: 'Email'}
        ],
        height: 150,
        listeners: {
            'render': function(component) {
                console.log('grid rendered');
            }
        }
    });

    //render the grid to the specified div in the page
    grid.render(document.body);
});

Vous ne pouvez pas exécuter ce code si vous n'avez pas de /Home/PersonList-url qui renvoie certains Json de données. Je ne sais pas si/comment je peux changer l'échantillon à un morceau complet de code (tout en ayant toujours le magasin de chargement automatique de données.

  • Avez-vous essayé sur une autre version de IE? Peut-être l'essayer par la commutation du mode de navigation dans les outils de développement?
  • Active Scripting activé?
  • Au travail, j'ai essayé mon code dans IE9 et Firefox, avec le même résultat. L'exemple de code que j'ai fourni ici, je l'ai seulement essayé avec IE11 et Chrome 33.
  • Cette question peut paraître stupide, mais avez-vous des outils de Développement activés sur IE? Sinon le console.log appels causer une erreur sur IE.
  • Oui, je ne les ont permis.
InformationsquelleAutor comecme | 2014-03-11