jsf - 在 pe :dynaform from bean 中添加 PrimeFaces 组件

标签 jsf jsf-2 primefaces primefaces-extensions

我想添加 PrimeFaces 组件,如 inputText , calendar等动态从bean。我尝试了几种可能的方法,但我无法从 bean 动态添加 PrimeFaces 组件。

看法:

<pe:dynaForm id="dynaForm" value="#{formGeneratorBean.model}" var="data">
    <pe:dynaFormControl type="input" for="txt">
        <p:inputText id="txt" value="#{data.value}" required="#{data.required}" />
        In place of p:inputText
    </pe:dynaFormControl>
</pe:dynaForm>

模型:
public FormGeneratorBean() {
    model = new DynaFormModel();
    DynaFormRow row = model.createRegularRow();
    DynaFormLabel label11 = row.addLabel("Author", 1, 1);
    DynaFormControl control12 = row.addControl(new BookProperty("Author",
    true), "input", 1, 1);
    label11.setForControl(control12);
}

最佳答案

将类型日历添加到您的 View

<pe:dynaFormControl type="calendar" for="cal" styleClass="calendar">  
         <p:calendar id="cal" value="#{data.value}" showOn="button"/>  
</pe:dynaFormControl>


并且您的 addControl 方法应该设置类型日历,例如:
DynaFormControl control12 = row.addControl(new Field("Birth Date",
true), "calendar", 1, 1);

您可以将 pe:dynaFormControls 用于您想要的所有类型,并且只有在您添加与其相关的控件时才会显示它们。

关于jsf - 在 pe :dynaform from bean 中添加 PrimeFaces 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33804442/

相关文章:

jsf - 使用客户端 ID 引用组件与使用 p :component 引用组件之间的区别

java - 使用 jsf 的动态图

java - JSF preRenderView 调用次数过多

JSF 复合组件 ID

javascript - 在我的 java 数据表中合并类似于 ms access 的查找对话框

java - 使用 Maven 和 IntelliJ 创建 JSF 项目

java - 不重定向到托管 bean 中指定的新页面

jsf - Primefaces 文件上传和 session 超时

javascript - 无法使用 onclick 显示 primefaces 面板

ajax - 如何在 Ajax Listener 中获取 SelectBooleanCheckbox 的状态?