JSF 1.2 hx selectone菜单,更改更新内容,无需刷新页面

时间:2013-08-07 14:58:40

标签: jsf jsf-1.2

我有一个带有selectOneMenu的页面,我想知道是否有任何方法可以在没有页面刷新的情况下更新另一个div中的内容。 我正在尝试这个,这不起作用。我知道我可以做onChange =“submit()”,但刷新页面,我不希望页面刷新 此外,这可能与hx:behavior和/或ajaxRefreshSubmit有关吗? 如果是,有人可以给我一个简单的例子来实现这一点。谢谢你的帮助

<hx:selectOneMenu value="#{bean.myValue}"
    valueChangeListener="#{controller.valueChangeMethod}">
    <f:selectItems value="#{bean.values}" />
</hx:selectOneMenu>

<div id="divToBeUpdated">
#{bean.displayValue}
</div>

1 个答案:

答案 0 :(得分:2)

您可以将ajax用于上述目的。这是示例代码

<h:form id="welcome">
<h:selectOneMenu id="countrydropdown" value="#{pracBB.mycountry}" >
 <f:selectItem itemLabel="India" itemValue="ind"/>
<f:selectItem itemLabel="usa" itemValue="usa"/>
<a4j:support event="onchange"  action="#{pracBB.changeData}" reRender="welcome">        </a4j:support>
 </h:selectOneMenu>



<h:outputText value="#{pracBB.dynamicString}"/>
</h:form>

支持bean代码 private String mycountry;

private String dynamicString="default";


public void changeData()

{



    if(mycountry.equalsIgnoreCase("usa"))
    {
        dynamicString="you have selected usa";  
    }

    else
    {
        dynamicString="you have selected india";

    }

}