Primefaces Spinner需要输入格式化的数字

时间:2016-04-27 16:13:18

标签: jsf primefaces spinner jsf-2.2 number-formatting

在Java项目中,我们使用PrimeFaces 2.2.1作为JSF扩展。我们正在以寄存器形式将日程表数据实现为“加载小时”,分为两个字段,小时和分钟。我们使用Spinner(p:spinner组件)作为输入元素。但是,当值小于10时,我们需要以显示至少两个数字的格式显示当前数据(仅整数)。

当前输入格式

Current input format

需要的输入格式

Needed input format

JSF标记的主体看起来像这样:

<div class="form_block">
        <div class="form_item">
            <h:outputText styleClass="form_item_label" value="Load Hours:"/>
            <div class="form_item_field">
                <p:spinner id="hora"  styleClass="spinnerField" style="height: 12px !important; box-shadow: none !important; border-radius: 4px 0px 0px 4px;"
                    value="#{hour}" min="00" max="23"><f:convertNumber pattern="00" minIntegerDigits="2" type="number"/></p:spinner>:
                <p:spinner id="minutos" styleClass="spinnerField" style="height: 12px !important; box-shadow: none !important; border-radius: 4px 0px 0px 4px;"
                    value="#{minutes}" min="00" max="59" maxlength="2"><f:convertNumber pattern="00" minIntegerDigits="2" type="number"/></p:spinner>
            </div>
            <div class="clear"></div>
        </div>
    </div>

我们还尝试使用Spinner中的f:convertNumber组件进行格式化,但似乎无法正常工作。以前有其他人有类似的问题吗?您可能分享的任何建议?提前致谢

请注意。我们没有实现时间选择器,因为我们精确地处理每个字段(小时和分钟)分开。

1 个答案:

答案 0 :(得分:0)

实际上,我不得不改变组件。不是使用p:spinner,而是知道实现了p:inputMask。