【问题标题】:how can I dynamically create html components in Jsf2如何在 Jsf2 中动态创建 html 组件
【发布时间】:2010-09-09 05:29:41
【问题描述】:

如何在 Jsf2 中动态创建 html 组件。我必须制作一个由用户填写的动态表单,所以我不知道如何管理,我必须使用 JavaScript 还是什么? 我也在用 Richfaces。

【问题讨论】:

  • 嗨 BalusC 实际上我有一个 h:inputtext 在其中我输入了一个 no.(Ex:8) 并单击生成按钮,我必须在 h:datatable 中生成 8 列 ...所以请给出解决方案

标签: jsf richfaces jsf-2


【解决方案1】:

是的。使用 JavaScript。使用 js 的一种方法是在页面上已有各种“动态”html 元素,但通过 CSS 设置为隐藏:display:none;

当元素触发隐藏元素显示时,使用js:document.getElementById('xyz').style.display = 'block';

【讨论】:

    【解决方案2】:

    在这里,您可以使用 panelGrid 组件,动态指定列数。 然后,您可以将其他内容添加到 panelGrid 中。

    页面代码:

    <ice:inputText value="#{bean.noOfColumns}"
    
    <ice:panelGrid columns="#{bean.noOfColumns}" binding="#{bean.gridComponent}">
    

    支持 Bean 代码:

    //---
    
    for(int i=0; i < noOfColumns; i++)
         gridComponent.getChildren().add(uiComponent);
    
    //---
    

    您可以相应地添加任何 uiComponent。

    【讨论】:

    • 然后你可以使用 因为它是核心 JSF 组件,如果它适合你的需要的话。
    猜你喜欢
    • 2021-08-25
    • 1970-01-01
    • 2020-12-29
    • 2018-06-18
    • 1970-01-01
    • 2021-03-26
    • 2016-12-07
    • 2011-02-09
    • 1970-01-01
    相关资源
    最近更新 更多