TooltipDialog中的连接Dojo按钮

nnt7mjpx  于 2022-12-16  发布在  Dojo
关注(0)|答案(1)|浏览(128)

如果按钮是TooltipDialog内容的一部分,当我尝试将dijit button连接到他的'onclick'方法时,dojo.connect出现了问题。
这段代码没有给予我错误,但它似乎没有连接到事件(所以如果我单击按钮,什么也不会发生)。

dialog = new dijit.TooltipDialog({
            id: dialogPrefix + dialogId,
            content: content
        });
if (closeOnBlur) {
    // stuff
} else {
    dialog.setContent('<div class="closePopupWrapper"><button dojoType="dijit.form.Button" type="button" id="closePopup_' + dialogId + '" >X</button></div>' + dialog.content);
    dialog.getChildren().forEach(function(w) {
        if (w.id == 'closePopup_' + dialogId) {
        //------------THIS CONNECT DOESN'T WORK
        dojo.connect(
            w,
            "onclick",
            function(e) {
                if (this.open) {
                    dojo.enabu.main.animatedpopup.close(this);
                }
        });  
        //-----------------------------------
}

调试,我可以看到w是正确的dijit按钮,我需要连接。
有什么想法吗?

huus2vyu

huus2vyu1#

您需要事件名称的正确大小写,这应该是正确的:

dojo.connect(w, "onClick" ....

对于常规的DOM节点,比如a,大小写无关紧要,但是由于dijit Button的click事件只是Button类中的一个javascript函数,所以大小写必须正确。

相关问题