连接dijit.dialog中的链接

时间:2009-07-06 17:15:55

标签: javascript html dojo

我在连接dijit.dialog中的链接时遇到了一些麻烦。

Iam在这个文件中调用Dialog(dialog.href =“xxx.html”)内的“其他”html文件,试图通过id连接一些链接,以触发一个警告框。但没有任何反应?可能这不可能??

这是我的xxx.html文件中的部分..

<script type="text/javascript">
    dojo.addOnLoad(function( ) {
        dojo.connect(dojo.byId('testLink'), 'onClick', alert('xx'));
    }); </script>


<a href='#' id="testLink">TEST</a>

2 个答案:

答案 0 :(得分:1)

Dialog is extended from ContentPane so it supports all the same parameters (href, etc.)。话虽如此,当通过href属性包含页面时,任何<script&gt;标签未评估,它们只是添加到DOM中。这为您留下了两个选择:

  1. refactor xxx.html,所以脚本可以通过对话框的onLoad处理程序运行
  2. 将事件处理程序嵌入到html标记中;即<input type="button" onClick="alert('xx');" /&gt;

答案 1 :(得分:1)

另一种选择是使用dojox.layout.ContentPane。它将解析&lt; script&gt;标签。虽然它在dojox中,但在未来的版本中它可能会发生变化。另一个缺点是,这需要创建自己的Dialog类,它是dojox.layout.ContentPane的子类。

还有一篇关于dojocampus about executing javascript in content panes的文章,其中讨论了使用dojox.layout.ContentPane来推送自己的Dialog小部件。