将变量传递给cfwindow

时间:2009-07-18 21:36:27

标签: coldfusion

我在表单中有一个表,它有许多相同的行。在每行的开头是文本字段和创建<cfwindow>的按钮,以便用户可以浏览库存并选择单个项目。然后我需要该项目的名称和ID才能被发送回主页面并填充文本框。 主页面表单工作正常。 <cfwindow>工作正常(搜索,显示等)。我无法找到一种方法来将<cfwindow>中设置的变量返回到主页面,只填充该特定行的文本字段,而不是重绘整个页面。我甚至无法让<cfwindow>访问主页面上的任何变量,我认为它只是一个浮动div,可以访问所有设置的主页面变量。

这是主页面的一行(索引用于循环以为每个行变量创建唯一的名称):

<cfinput type="button" value="Select" name="xSelect#i#" onClick="ColdFusion.Window.create(blah blah blah...)/>

<cfinput type="text" name="x1s#i#xName" value="form.x1s#i#xName" size="30" disabled="true"/>

<cfwindow>中的

,查询会填充一个项目列表,每个项目都有一个单选按钮。用户需要选择一个,并且需要将该项目的ID返回到该行的主页面:

3 个答案:

答案 0 :(得分:1)

我很感激反馈。这是我最终做的事情: - 通过url使用按钮和onClick =“ColdFusion.Window.create ...”将变量传递给cfwindow - 在cfwindow中,我使用url变量作为参考,然后我有一个搜索对话框,然后将搜索结果与url变量(通过url变量)一起发送到一个简单的操作页面,该页面只显示一个表单,其中填充了变量一个onclick =“javascript:ColdFusion.navigate ......” - 回到主页面我有一个cfdiv,通过网址

绑定到操作页面

因此,从我传递给我的搜索功能的引用开始,我将其保持为“已标记”,然后每次刷新它都会正确显示在主页面中。

所以它现在正在工作,我需要做的最后一件事是将所有动态变量放在一个数组中以减少开销。

答案 1 :(得分:0)

在ColdFusion中,您可以将某些内容放入会话范围,或者您可以使用javascript在调用页面上设置隐藏字段。可能有一个更好的解决方案,但这是一些快速的解决方案。

答案 2 :(得分:0)

在父窗口的链接中使用Javascript函数调用。

Javascript函数中,使用ColdFusion.Window.create创建一个子窗口,其中包含一个动态网址,传递您需要的变量。

Etvoilà。