<h:selectOneMenu class="medium" id="state" value="#{locationDataBean.stateSelected}" required="true" requiredMessage="Select State">
<f:selectItem itemLabel="Select State" itemValue="-1"/>
<f:selectItems value="#{systemResultViewUtil.stateList}"/>
<a4j:ajax event="change" listener="#{locationServiceBean.retrieveStateDetails()}" render="district,taluka,centerNameList1,stateMsg"/>
</h:selectOneMenu>
<h:message for="state" style="color: red" id="stateMsg"/>
这是我一直在使用的JSF标记,value="#{locationDataBean.stateSelected}
“已经包含来自后面bean的vlaue。但是我仍然没有得到在chrome页面上选择的值。它显示了一个空白记录在页面上。该值在页面上获得,即使我检查元素,它显示以下html脚本
<option value="55" selected="selected">466-Assam </option>
但随后该值也未显示在页面上。
答案 0 :(得分:0)
如果选择框HTML看起来正确但你无法在渲染页面上看到它,那么你的CSS类medium
是否被定义为隐藏它?尝试删除class
属性,看看这是否有效。
答案 1 :(得分:-1)
您是否尝试过任何其他浏览器?
在h:selectOneMenu元素本身中尝试值更改侦听器,如
<h:selectOneMenu class="medium" id="state" value="#{locationDataBean.stateSelected}" required="true" requiredMessage="Select State" valueChangeListener="#{locationServiceBean.retrieveStateDetails}">
<f:selectItem itemLabel="Select State" itemValue="-1"/>
<f:selectItems value="#{systemResultViewUtil.stateList}"/>