从模板中实例化dijit.Dialog我无法正确初始化它

时间:2012-11-14 00:47:30

标签: dojo

在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();

我错过了什么?

1 个答案:

答案 0 :(得分:0)

在子类化时覆盖原始dijit/Dialog的模板。

查看我对Dojo Dialog with confirmation button的回答,它解决了您遇到的问题。或直接转到jsFiddle的工作示例:http://jsfiddle.net/phusick/wkydY/