ADF页面加载与刷新

当页面第一次加载时,可以调用document的onload方法

<af:document id="d1">//特别注意,只有放在这里onload才有用
<af:clientListener type="load" method="onLoad"/>
<af:serverListener type="freshPageEvent"
method="#{AcceptCtrlBean.freshPageEvent}"/>
<af:resource type="javascript">
function onLoad(evt){ var selectbox = evt.getSource();
AdfCustomEvent.queue(selectbox, "freshPageEvent",
{},true); evt.cancel(); }
</af:resource>

当点击页面的按钮时,常常会出现刷新,此时可能不需要动态刷新(会出现页面抖动),只需要静态,那么就需要用部分刷新

<af:panelGroupLayout id="pgl13" inlineStyle="padding-top:5.0px;"
layout="horizontal"
partialTriggers="gl1 gl2 gl3 gl4 gl5 gl6 gl7 gl8 gl9 gl10">
<af:panelGroupLayout id="pgl16"
inlineStyle="background-color:rgb(148,148,255);"
binding="#{ShenbaoSearch.ymd}"
rendered="false">
<af:outputText value="#{ShenbaoSearch.rqDesc}" id="ot12"
binding="#{ShenbaoSearch.rq}"/>
<af:image source="/images/u222.png" id="i1"
inlineStyle="width:15px;height:15px;"/>
</af:panelGroupLayout>
<af:panelGroupLayout id="pgl17"
inlineStyle="background-color:rgb(148,148,255);"
binding="#{ShenbaoSearch.ztm}"
rendered="false">
<af:outputText value="#{ShenbaoSearch.ztDesc}" id="ot2"
/>
<af:image source="/images/u222.png" id="i2"
inlineStyle="width:15px;height:15px;"/>
</af:panelGroupLayout>
</af:panelGroupLayout>

被刷新的部分页面最好单独放在一个容器内。例如此实例,要想更新pgl16,pgl17使之显示,最好将它们放在一个pgl13容器中。

当按钮的监听器监听到事件后,会更改rendered=true,这时只需要将按钮的id 加入到partialTriggers中就可以了。

如果,你还需要更改ot12中的value值的话。最好在JAVA代码中另外添加AdfFacesContext.getCurrentInstance().addPartialTarget(this.getZtm());代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值