2009-07-06 99 views
0

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

Iam在此文件内的对话框(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> 

回答

1

Dialog is extended from ContentPane so it supports all the same parameters (href, etc.)。这就是说,当通过href属性包含页面时,任何<script>标记都不会被评估,它们只会被添加到DOM中。这使你有两个选择:

  1. 重构xxx.html,所以脚本可以通过对话的onLoad处理程序运行
  2. 嵌入的事件处理程序到HTML标签;即<input type="button" onClick="alert('xx');" />
+0

感谢您的想法连接到onLoad!工作正常! – opHASnoNAME 2009-07-06 18:11:40

1

另一种选择是使用dojox.layout.ContentPane。它会解析<脚本>标签。它在dojox中,但它在将来的版本中可能会改变。另一个缺点是,这需要创建自己的Dialog类,它是dojox.layout.ContentPane的子类。

还有一篇dojocampus about executing javascript in content panes的文章,讲述了如何使用dojox.layout.ContentPane来滚动自己的Dialog小部件。