2

プログラムでアコーディオンペインを開いたり閉じたりしようとしています。これが私のコードの簡略版です。最初のペインの選択を false に設定し、2 番目のペインの選択を true に設定しても、ブラウザー (FF3) に読み込まれると最初のペインのみが開きます。

var accordionContainer = new dijit.layout.AccordionContainer().placeAt("test");
var accordPane = new dijit.layout.ContentPane({"title": "test", "content":"hello"});
var accordPane2 = new dijit.layout.ContentPane({"title": "test1", "content":"hello1"});
accordionContainer.addChild(accordPane);
accordionContainer.addChild(accordPane2, 1);
accordPane.startup();
accordPane2.startup();
//accordionContainer.selectChild(accordPane2);
accordionContainer.startup();
accordPane.selected = false;
accordPane2.selected = true;
4

1 に答える 1

11

次のように実行できます。

accordionContainer.selectChild( accordPane2 );

Dojo 1.3 を使用していると仮定します。

dijit.layout.AccordionContainerは、定義された のサブクラスdijit.layout.StackContainerですselectChild

このコードの動作を確認できるデモ ページをセットアップしました

selectChild以前にを呼び出していた場合startup、ウィジェットが「完了」状態になかったために表示されていたエラーが発生する可能性があります。(申し訳ありませんが、元の回答を投稿する前に、コメントアウトされたコードを見逃していました)

于 2009-07-27T20:33:09.670 に答える