0

Dojoでは、テンプレートを使用してdijit.Dialogを拡張しようとしています。インスタンス化すると、ダイアログボックスにテキストのみが表示され、境界線や閉じるボタンは表示されません。完全に初期化するために必要な追加の手順はありますか?

私のテンプレートはtemplate.htmlにあり、次のようになります。

<div dojoType="dijit.Dialog" id="dynFilter" jsId="dynFilter">
"Dynamic Dialog"
</div>

これがdojo.declareです:

dojo.declare(
    "template.dialog",                                  // class name
    [dijit._Widget, dijit._Templated, dijit.Dialog],    // parent classes
    {
    templateString : dojo.cache("autonomics", "template.html"),
    }
);

インスタンス化した後、何も実行しないように見える.startup()を呼び出し、次に.show()を呼び出します。これにより、ページに配置され、ほとんどの機能が失われます。

var dialog = new template.dialog();
dialog.startup();
dialog.show();

私は何が欠けていますか?

4

1 に答える 1

0

dijit/Dialogサブクラス化するときに、元のテンプレートを上書きします。

発生している問題を解決する確認ボタン付きのDojoDialogに対する私の回答をご覧ください。または、jsFiddleの実例に直接アクセスしてください:http://jsfiddle.net/phusick/wkydY/

于 2012-11-14T09:52:46.170 に答える