2011-04-21 75 views
0

我正在使用Struts 2应用程序。我有一个JSP页面,其中有一个普通的html表格。在其中一列中,我有一个名为'更新'的链接。当我点击'更新'时,将会打开一个新的弹出窗口,弹出窗口中将显示当前行的许多其他细节(这意味着它必须通过某些操作并从数据库获取数据)。struts2:如何弹出一个弹出窗口

弹出窗口中有一个提交按钮,单击时必须提交编辑的数据。

如何在struts 2中创建此弹出窗口?

它应该是与父窗口相同的窗体还是不同的窗体?

如果您可以提供某些教程的链接,这将非常有帮助。我无法在Google搜索中找到它。

回答

3

它与JavaScript有关的问题不是struts2.I你猜你必须在表格定义中使用这个语法链接update

<tr><a href="javascript:update('<s:proerty value="anyValueYouwantToSend"/>')">Update</a></tr> 

其中anyValueYouwantToSend可能是你想一些标识送价值,以确定特定行 然后在Javascript

function update(value){ 
    var url="myAction?someVariable=value"; 
    window.open(url,"_blank","directories=no, status=no,width=1400, height=870,top=0,left=0"); 
} 

其中myAction将是你要做你的数据库的东西的动作。在这个动作的动作映射中,你需要给出一个jsp的结果,这个jsp将成为你的弹出窗口。当然,弹出窗口会有不同的表单提交,但是你在这里执行的更新将会反映在只有当你刷新父窗口。如果你想反映这些变化没有刷新父窗口,你需要写一些父母的孩子的JavaScript,我可以帮你做,如果你想要

+0

嗨anu,我会很高兴,如果你能提供给我的父母/孩子的JavaScript的引用。这正是我想要的。 – vinoth 2011-04-26 10:13:19

+0

从孩子到父母的沟通很简单,只需使用“window.opener”对象。参考[看这里](http://www.plus2net.com/javascript_tutorial/window-child3.php)。通过使用窗口打开语句中声明的变量完成从父到子的通信。 “var childObj = window.open(url,options);” 。现在你可以使用childObj与子窗口 – anu 2011-04-26 10:56:07

+0

沟通耶耶谢​​谢。我会研究一下。 – vinoth 2011-04-26 11:12:30