0

ユーザーがクリックしている (アコーディオン コンテナーの) 子の詳細を取得するために、このトピック「-selectChild」にサブスクライブしました。正常に動作しましたが、後ですべてのコンテンツ ペインをデフォルトでアコーディオン コンテナ内に折りたたんでおきたいと思いました。インターネットで検索しましたが、見つかりませんでしたが、アコーディオン コンテナで selectChild(0) を呼び出して試しました。機能しましたが、この行 (selectChild(0)) を追加した後、ユーザーが任意のペインをクリックするとエラーが発生します

私が得ているエラー:

キャッチされていない TypeError: 未定義のプロパティ 'containerNode' を読み取ることができません

コード (完全なコードではありません)

topic.subscribe("accordianContainerId-selectChild", function(pane){
console.log('user selected pane:'+pane)
});


aContainer = new AccordionContainer({id: 'accordianContainerId', "isLayoutContainer": true,style:"height: 100%"});
aContainer.addChild(new ContentPane({ 
            id: 'test',
            title: 'test',
            content: "<div>test</div>", doLayout: true
            }));
aContainer.placeAt("markup");
aContainer.startup();
aContainer.selectChild(0);
4

1 に答える 1

0

番号の代わりに子ペイン ウィジェットを selectChild に渡す必要があります。「ペインが選択されていない」ことを達成するためのトリックを行っていますが、accordionContainer は現在選択されているペインを保持するため、次回は別のペインを選択しているときにこのペインを折りたたむことができます。もちろん、現在選択されているペイン「0」の場合、実際には未定義のペインであり、containerNode プロパティはありません。

AccordionContainer のすべてのペインを折りたたむことはできません。代わりに TitleGroup を使用してみてください。

dojox.widget.TitleGroupを参照してください

于 2013-10-06T17:03:38.450 に答える