如何让af:inputListOfValues(LOV)的初始值显示为Blank而不是默认的VO的First Row

2011-07-20(Wednesday) 00:00

目前LOV控件在页面初始化时默认显示的是第一条记录,如果想让LOV初始化的时候不显示记录应该如何设置呢?

方法一. 通过在BackingBean的构造函数里设置LOV的值为空字符串这种做法基本可以达到需求。但总感觉这种方法很别扭,走了弯路。

本文介绍另外一种更为简单的方法。通过EL表达式实现需求。

           <af:inputListOfValues id="ilov1"
                                    popupTitle="Search and Select: #{bindings.CodeType.hints.label}"
                                    value="#{adfFacesContext.postback == false ? bindings.CodeType.nullValueString : bindings.CodeType.inputValue}"
                                    label="#{bindings.CodeType.hints.label}"
                                    model="#{bindings.CodeType.listOfValuesModel}"
                                    required="#{bindings.CodeType.hints.mandatory}"
                                    columns="#{bindings.CodeType.hints.displayWidth}"
                                    shortDesc="#{bindings.CodeType.hints.tooltip}"
                                    binding="#{backing_pages_frs001.ilov1}"
                                    valueChangeListener="#{backing_pages_frs001.valueChange}"
                                    >
看这段代码:
value="#{adfFacesContext.postback == false ? bindings.CodeType.nullValueString : bindings.CodeType.inputValue}"
当页面没有postback的时候,给LOV字段的值设为nullValueString,即可。

今天太困了。。。先睡了。。。不贴图了~

Category: ADF Tagged: ADF