所以看起来dojo.addOnLoad
和dojo.ready
功能不适用于对话框。
我正在寻找替代品。问题是我的对话框 HTML 是动态创建的,并且包含许多不同的脚本块,每个脚本块都使用一个dojo.connect
函数来添加功能。例如,我有:
<input type='checkbox' name='value(liquid40011252)' value='1' dojoType='dijit.form.CheckBox' id='liquid4001125249' />
<script type='text/javascript'>dojo.addOnLoad(function() {
dialogConnect4001125249();});
function dialogConnect4001125249() {
dojo.connect(dijit.byId('liquid4001125249'), 'onChange',
function(){
// my code for toggling checkboxes ets
});
}
</script>
这在普通网页中工作正常,但对话框addOnLoad
不受尊重且未dijit.byId('liquid4001125249')
定义。ready
没有帮助。
我实例化对话框
searchDlg = dojox.widget.DialogSimple();
searchDlg.set("title", title);
searchDlg.set("style", "width: " + width + "px; max-height: "+height+"px; overflow:auto;");
searchDlg.set("content", content);
searchDlg.show();
并考虑调用dialogConnect
之后,show
但有很多dialogConnectxxxxx
,我没有列表。
也许另一种选择是以某种方式在dialogConnect
某处添加 s 列表 - 也许在对话框本身上。没有把握。
关于如何解决这个复杂问题的任何想法?