javascript - JSFiddle 中的 Dijit 对话框立即启动 - 而不是 onClick

标签 javascript dojo

我正在努力让 Dijit 对话框适用于可重现的示例。我从 this JSfiddle 获取了工作代码并只是尝试将其转换为命名函数以在整个示例中使用。

作者使用:

new Button({label: 'Show dialog', onClick: function() {
   //Create dialog programmatically here
}
});

但我已将其更改为略有不同:

function launchSelectDialog(selectOptions) {
    //Create dialog programmatically here
}
registry.byId("default-launch", "onClick", launchSelectDialog(allOpts));

Here is my version.不幸的是,这只是在加载页面时立即启动对话框,而在单击按钮时不再启动对话框。

我已经检查了 JSFiddle 中的 NoWrap 选项。我对发生的事情没有其他线索。 如果您有任何想法,请帮忙。

最佳答案

有几个问题。

1)就像其他人指出的那样,您正在调用该函数,而不是使用函数设置事件。因此该对话框在加载时可见。

2) 您需要等待 html 被解析。或者您需要使用 parser.parse()

这是更新后的 fiddler :http://jsfiddle.net/49y3rxzg/9/

关于javascript - JSFiddle 中的 Dijit 对话框立即启动 - 而不是 onClick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39236636/

相关文章:

javascript - 显示为警报

Javascript/jQuery 区分移动设备和 PC

javascript - 为什么我在 osm 中收到此错误?

javascript - 在 Dojo ContentPane 中加载 javascript

javascript - 使用 dojo 修改 div 的文本

javascript - 在 dojo NumberTextBox 中输入非数字字符时布局被更改

javascript - Dojo 表单处理事件

javascript - 单击 DIV 时专注于输入

javascript - 如果不满足条件,则单击时跳过元素

javascript - 引导覆盖不生效