1

dgrid に問題があります.... AccordionContainer があり、その各 ContentPane に dgrid を配置します。dgrid の問題は次のとおりです。 1- スクロールのエラー: 下にスクロールすると、特定の瞬間にスクロールが「スキップ」して最後にジャンプし、上にスクロールして最初のレコードを表示する方法がありません。(スクロールが失敗すると、Firebug でエラー TypeError: grid._rows is null を見たことがあります)。2- 値を変更しようとしています: dgrid-datachange イベントが発行されないように聞こえます。値を編集した後にイベントをキャプチャする方法はありません。

これらのエラーは、レイアウト内に dgrid があることに関係していると思います (ContentPane 内の dgrid、AccordionContainer 内)。DijitRegistry 拡張機能も含めましたが、この拡張機能を使用しても、このエラーを取り除くことはできません。エラーを再現するこのフィドルを用意しました:

https://jsfiddle.net/9ax3q9jw/5/

コード:

var grid = new (declare([OnDemandGrid, DijitRegistry,Selection, Selector, Editor]))({
            collection: tsStore,
            selectionMode: 'none',
            columns:
                [
                    {id: 'timestamp', label:'Timestamp', formatter: function (value,rowIndex) {
                        return value[0];
                    }},
                    {id: 'value', label: 'Value',
                        get: function(value){
                            return value[1];
                        },
                        editor: "dijit/form/TextBox"
                    }
                ],
            showHeader: true
        });
        grid.startup();
        grid.on('dgrid-datachange',function(event){
            alert('Change!');
           console.log('Change: ' + JSON.stringify(event));
        });

        //Add Grid and TextArea to AccordionContainer.
        var cp = new ContentPane({
            title: tsStore.name,
            content: grid
        },"accordionContainer");

助けていただければ幸いです、ありがとう、エンジェル。

4

1 に答える 1