0 0

jsf的弹出窗口问题5

我想向窗口中传入一个值,然后取回数据,传入发动机编号,然后取回该发动机的值
看代码:
<script>
function setReportNo(){
    var f=document.forms["serviceReport"];
f.elements['serviceReport:feeReportNo'].value=f.elements['serviceReport:repno'].value;
alert(f.elements['serviceReport:feeReportNo'].value);
return true;
}
function popupWindow(formId,actionId){
features="height=450,width=600,status=yes,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes";
winId=window.open('','list',features); // open an empty window
var hiddenform=document.forms[formId]; // reference to the hidden form
hiddenform.elements[formId+':_link_hidden_'].value=formId+":"+actionId;//这个是干什么用的?用来触发指定的服务器端方法
hiddenform.submit();
winId.focus();
}
</script>

这是js,其中setReportNo能显示发动机号,这个发动机号要传到后台的,
<h:inputHidden id="feeReportNo" value="#{settlementList.reportNo}" />
<h:inputText id="repno" value="#{reportAction.content.invoiceNo}" readonly="true" styleClass="inputCell"/></td>
在这个页面中id=repno是有发动机的值的,要通过js传到后台中去

通过按钮实现
<h:commandButton rendered="#{(reportAction.content.status eq '29-6')||(reportAction.content.status eq '29-7')}" value="#{li:msg('settlement.list')}" action="settlementList.doView" onclick="return false;" onmousedown="popupWindow('showReportFee','lookup');setReportNo();"/>

这个是按钮的代码,我设置了断点,但是值没有传回到后台中,我不知道什么原因,哦,对了,id为showReportFee的form如下:
<h:form id="showReportFee"  target="list">
    <h:commandLink id="lookup" action="#{settlementList.doView}">
    <f:verbatim></f:verbatim>
    </h:commandLink>
</h:form>

其中#{settlementlList.doView}设置了将要弹出的窗口页面

拜托各位解决一下,就是那个发动机号不能传到后台中去,所以就不能根据他取到值,页面没有任何值显示。。。
拜托了。。
问题补充:
我想向窗口中传入一个值,然后取回数据,传入发动机编号,然后取回该发动机的值
看代码:
&lt;script>
function setReportNo(){
    var f=document.forms["serviceReport"];
f.elements['serviceReport:feeReportNo'].value=f.elements['serviceReport:repno'].value;
alert(f.elements['serviceReport:feeReportNo'].value);
return true;
}
function popupWindow(formId,actionId){
features="height=450,width=600,status=yes,toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes";
winId=window.open('','list',features); // open an empty window
var hiddenform=document.forms[formId]; // reference to the hidden form
hiddenform.elements[formId+':_link_hidden_'].value=formId+":"+actionId;//这个是干什么用的?用来触发指定的服务器端方法
hiddenform.submit();
winId.focus();
}
&lt;/script>

这是js,其中setReportNo能显示发动机号,这个发动机号要传到后台的,
&lt;h:inputHidden id="feeReportNo" value="#{settlementList.reportNo}" />
&lt;h:inputText id="repno" value="#{reportAction.content.invoiceNo}" readonly="true" styleClass="inputCell"/>&lt;/td>
在这个页面中id=repno是有发动机的值的,要通过js传到后台中去

通过按钮实现
&lt;h:commandButton rendered="#{(reportAction.content.status eq '29-6')||(reportAction.content.status eq '29-7')}" value="#{li:msg('settlement.list')}" action="settlementList.doView" onclick="return false;" onmousedown="popupWindow('showReportFee','lookup');setReportNo();"/>

这个是按钮的代码,我设置了断点,但是值没有传回到后台中,我不知道什么原因,哦,对了,id为showReportFee的form如下:
&lt;h:form id="showReportFee"  target="list">
    &lt;h:commandLink id="lookup" action="#{settlementList.doView}">
    &lt;f:verbatim>&lt;/f:verbatim>
    &lt;/h:commandLink>
&lt;/h:form>

其中#{settlementlList.doView}设置了将要弹出的窗口页面

拜托各位解决一下,就是那个发动机号不能传到后台中去,所以就不能根据他取到值,页面没有任何值显示。。。
拜托了。。


我是想取页面中已经存在的发动机号,然后通过点击按钮来弹出另一个窗口,我试了一下,如果没有弹出窗口,发动机编号是能传回去的,并且能取出数据,但是加上弹窗之后,那个发动机编号就是打死也不回传回去,好像被覆盖掉似的,我很郁闷啊。。。
2008年11月13日 10:24

2个答案 按时间排序 按投票排序

0 0

你这种方式完全不可取,首先说一下:
第一:

引用

hiddenform.elements[formId+':_link_hidden_'].value=formId+":"+actionId;//这个是干什么用的?用来触发指定的服务器端方法
hiddenform.submit();

这段代码是提交ID为showReportFee的Form,并触发后台commandLink的action绑定的方法,但是在这段代码执行之前你的弹出窗口已经出来了,弹出窗口已经显示了,所以即便是你通过提交showReportFee表单给后台传递数据,但是弹出窗口哦已经显示不会再从后台取了,提交表单传递参数和弹出窗口加载页面的先后顺序你是无法控制的,建议换个思路,直接通过前台传递参数也是可以的

2008年11月13日 10:44
0 0

<h:inputHidden id="feeReportNo" value="#{settlementList.reportNo}" />
你在这里加个BINDING
binding=#{settlementList.reportUI}
然后通过reportUI.getValue就行了

在settlementList 这个可管理BEAN里面加入
UiInput reportUI=new UIInput();

2008年11月13日 10:34

相关推荐

    适用于JSF RI 1.0 Final Release的弹出窗口程序

    - 注意跨域和同源策略,尤其是当弹出窗口需要与服务器进行通信时,避免产生安全问题。 总之,JSF 1.0 Final Release虽旧,但依然可以创建功能丰富的弹出窗口应用。通过理解JSF组件、EL表达式以及JavaScript的交互...

    适用于JSF RI 1.0 beta的弹出窗口程序 编辑

    8. **错误处理和验证**:JSF提供内置的验证机制,可以在弹出窗口中验证用户输入,如果输入无效,可以在不关闭弹出窗口的情况下显示错误消息。 9. **状态管理**:由于JSF是状态管理框架,开发者需要考虑如何在多个...

    jsf页面上的客服浮动窗口

    这些组件可以在页面上以弹出或浮动的形式展示内容,非常适合做客服窗口。 3. **JavaScript和CSS**:为了实现浮动效果,我们需要使用JavaScript来控制窗口的位置和显示隐藏,并通过CSS进行样式定制,确保窗口在页面...

    eclipse 创建JSF xhtml 模板

    - 在弹出的窗口中,输入模板名称,例如“JSF_XHTML_Template”。 - 编辑模板内容区域,粘贴以下XHTML代码: ```xml &lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ...

    JSF分页代码和学习文件1

    3. **jsf-popup_beta**:这个名字暗示了可能包含一些与弹出窗口(popup)相关的代码,这在JSF中可能是通过自定义组件或者使用内置的`&lt;p:dialog&gt;`组件来实现的。弹出窗口在很多场景下都非常有用,如显示详细信息、...

    ADF Table popup弹出编辑和添加

    2. **弹出窗口(Popup)创建**:ADF 提供了`AFW_13_DIALOG`组件来创建弹出窗口。在这个例子中,我们需要创建一个包含编辑和添加功能的弹出窗口。窗口可以通过`DialogService` API 动态创建,或者预先在页面定义好,...

    AJAX+JSF制作7个特效

    使用AJAX和JSF,可以创建可动态显示和隐藏的弹出窗口,例如`&lt;p:dialog&gt;`组件,它支持AJAX触发,使得对话框的打开和关闭更加流畅。 6. 图片轮播: 在网页上展示一组图片时,AJAX可以实现图片的动态加载和切换。JSF...

    jsf eclipse 开发环境配置实例图解

    5. 点击“新建”(New),在弹出的对话框中,选择你的JSF实现(例如JSF 1.1或更高版本),并勾选“是JSF实现”(Is JSF Implementation)。 6. 同样在此处,添加JSTL库,但不勾选“是JSF实现”。 **新建JSF工程**: 1. ...

    myeclipse7.0整合spring2.5+hibernate3.2+jsf(myfaces)

    在弹出的窗口中,同时选择Spring Persistence JDBC Libraries和AOP、Core。向下滚动选择Spring Web Flow 2.0 JSF,MyEclipse会自动添加相关的jar包。最后,选择配置文件的路径,例如WebRoot/WEB-INF,然后点击Finish...

    基于primefaces对table的增删改查的源码

    使用`&lt;p:dialog&gt;`组件可以创建弹出窗口,而`&lt;p:inputText&gt;`等组件则用于接收用户输入。 2. **删除(Delete)**: 删除操作通常在用户选中一行后触发,通过点击删除按钮完成。`&lt;p:commandButton&gt;`用于定义这个操作,...

    my-tiles-richfaces

    而RichFaces则是一个富客户端组件库,它为JSF提供了许多高级的交互性和视觉效果,如数据表格、图表、弹出窗口等,使得用户界面更加生动且易于操作。 在"my-tiles-richfaces"项目中,开发者可能首先通过NetBeans IDE...

    eje_CRUD_Mybatis:使用 JSF、Primefaces 和 Mybatis 使用 JavaWebApplication 进行开发

    在"eje_CRUD_Mybatis"中,Primefaces帮助我们构建用户友好的界面,例如,使用它的`&lt;p:dataTable&gt;`组件展示数据库中的数据,`&lt;p:dialog&gt;`组件进行弹出窗口操作,以及`&lt;p:inputText&gt;`、`&lt;p:commandButton&gt;`等组件来...

    ADF开发者小资料

    例如,使用`LOV`(List of Values)组件来提供下拉列表或弹出窗口的选择,这需要正确配置数据源和选择监听器。`LOV`的配置不仅限于简单的值列表,还可以链接到更复杂的业务逻辑,如数据库查询结果或远程服务调用。 ...

    richfaces-ui-3.2.2.GA-src.zip

    3. **对话框组件**:`&lt;rich:popupPanel&gt;`允许弹出窗口,`&lt;rich:modalPanel&gt;`则提供了模态对话框功能。 4. **效果组件**:如`&lt;rich:effect&gt;`,使用JavaScript库(如jQuery)实现动画和特效。 五、源码学习与调试 ...

    文件分割器

    如果操作正确就会弹出一个菜单,选择你需要拆分的尺寸即可。出现分割完成的提示后, 检查FileSpliter.exe所在的目录,会出现一个已被拆分文件名命名的目录(为了防止重名目 录存在,可能会在目录名末尾加入递增数字...

    richfaces中文开发文档

    4. **rich:popupPanel**:弹出面板组件,可以实现浮窗效果,常用于对话框和下拉菜单。 5. **rich:modalPanel**:模态窗口组件,用于在当前页面上打开一个半透明的覆盖层,突出显示特定内容。 **三、RichFaces与JSF...

    richfaces标签例子

    3. `popup="#{calendarBean.popup}"`: 这个布尔属性决定了日历是否以弹出窗口的形式出现。 4. `datePattern="#{calendarBean.pattern}"`: 指定日期的显示格式,可以由`calendarBean.pattern`动态更改。 5. `...

    备忘录模块使用

    填写备忘信息,然后单击“保存”按钮,等时间到时,会自动弹出提示窗口。 图1.3 添加备忘信息页面 添加完备忘信息后,在万年历相应的日期右下角会有个灰色的标记,单击可查看该日期的所有备忘信息。 图1.4 首页...

    richfaces开发指南(英文版)

    - **对话框和模态面板**:如`&lt;rich:popupPanel&gt;`,用于创建弹出窗口。 - **皮肤和样式**:支持自定义CSS皮肤,使得UI风格可以统一且易于更改。 **6. 性能优化与调试** - **Ajax优化**:通过设置Ajax响应缓存、延迟...

Global site tag (gtag.js) - Google Analytics