如何使用 dojo 和 struts2 在对话框中显示异步获取的信息?

Posted

技术标签:

【中文标题】如何使用 dojo 和 struts2 在对话框中显示异步获取的信息?【英文标题】:How can i show asynchronously gotten information in a dialog box using dojo and struts2? 【发布时间】:2012-06-05 15:24:08 【问题描述】:

我正在构建一个代码,使用 Struts2 和 Dojo 来支持 Ajax。当使用某些链接时,我正在尝试启动一个对话框。此对话框应包含单击所述链接时异步获取的信息。

这是我的代码:

<s:url id="buscar_usuarios_url" value="/buscar_usuarios.action"/>
<li id="menu_buscar_usuarios"><sx:a targets="buscar_usuarios_dialog" href="%buscar_usuarios_url">Buscar usuarios</sx:a></li>

这段代码得到了我需要在我在这个脚本中使用的对话框中显示的html

$(document).ready(function() 
   $("#menu_buscar_usuarios").live('click', function() 
        $("#buscar_usuarios_dialog").dialog(
            modal:true
        );
   );

我遇到的问题是,当我单击 标记时,只获取了信息,但没有显示对话框。而当我点击 外的 时,只显示对话框,但信息没有更新。

我尝试将 id "menu_buscar_usuarios" 赋予 标签,但它也不起作用,我该怎么办?

【问题讨论】:

给 sx:a 提供 id "menu_buscar_usuarios" 的错误是什么 请将此添加为答案并在 48 小时后接受,将来会帮助某人 是的,我试过了。我没有足够的声誉,所以我只需要等待 6 个小时。那我就做吧。谢谢。 +1 表示您努力帮助他人 :) 【参考方案1】:

我修好了。我只是给了 id “menu_buscar_usuarios”,而不是使用已弃用的 live() 函数,而是使用了 on() 函数,如下所示:

$(document).ready(function() 
   $("#menu_buscar_usuarios").live('click', function() 
        $("#buscar_usuarios_dialog").dialog(
            modal:true
        );
   );

谢谢大家

【讨论】:

以上是关于如何使用 dojo 和 struts2 在对话框中显示异步获取的信息?的主要内容,如果未能解决你的问题,请参考以下文章

struts2 和 dojo 网格

如何将 html 文件加载到 XPages 中的 Dojo 对话框中

在带有 DOJO 插件的 Struts2 应用程序中使用 dijit 小部件有啥特殊要求吗?

Struts2 插件 - Dojo 或 jQuery 还是...?

使用 struts2 dojo 标签填充一个下拉列表以选择其他下拉列表

如何以编程方式在 Dijit 对话框中制作和显示表单?