1

我有一个下拉框和一个 inputText。这是我的 xhtml 代码:

<h:panelGroup id="inputs">
<h:selectOneMenu value="#{tabBean.refundCharge}" name="reCharge">
    <f:selectItems value="#{tabBean.reChargeList}" />
    <f:ajax render="inputs" />
    </h:selectOneMenu>


    <p:inputText value="#{tabBean.refundDescr}"  rendered="#{tabBean.refundCharge == 'Item2'}"/>
</h:panelGroup>

这是 TabBean :

 private String            refundCharge;

    public String[] getReChargeList() {


        ResourceBundle config = ResourceBundle.getBundle("config");
        String reChargeList=   "Item1 % Item2 % Item3";
        String delimeter = "[%]";
        String[] reChargeDescr = reChargeList.split(delimeter);

        return reChargeDescr;
    }

未显示 inputText。当我从 dropDownList 中单击 Item2 值时,必须显示输入文本。但这些代码不起作用。

它必须在我单击 Item2 时才显示。错误在哪里?

谢谢

4

1 回答 1

3

%reChargeList. _ 所以有效地分割值是"Item1 "和。不等于您在属性中指定的值,因此它永远不会被渲染。" Item2 "" Item3"" Item2 ""Item2"rendered

删除这些空格或将拆分分隔符更改为\\s*%\\s*

于 2012-05-15T12:53:34.793 回答