我在其他帖子中找不到解决方案,所以这是我的问题。(事先,我在 JBoss 7.1 AS 上使用 JSF 2 和 Mojarra 实现和 Primefaces 3.2)
我正在构建一个应该在运行时动态生成的搜索掩码。我从另一篇文章中知道我应该为此使用数据表。这就是我要做的。
但是搜索掩码由 3 部分组成,搜索标准(例如姓名、生日、...)、运算符(是、不是、大于、在范围内...)和操作数(用户将作为搜索输入)。
我的目标是动态生成搜索掩码,但输入字段的类型取决于用户选择的标准+运算符。
因此,如果用户从下拉框中选择标准:“名称”和运算符:“不是”,那么操作数的输入字段应该只是一个简单的 p:inputText。
但是如果用户选择标准“生日”和运算符:“之前”,那么输入字段应该是一个日期选择器,如 p:calendar。
我的想法是将 ap:dataTable 用于“SearchRow”对象列表,其中每个对象都有一组条件和操作数,以便在 ah:selectOneMenu 中使用它们。
然后我将 valueChangeListener 添加到 selectMenues 中,并在其中计算并创建我需要的正确类型的 UIComponent 作为输入字段。
但我不知道如何将该 UIComponent 添加为 dataTable 中的第三列。
那么我的想法有什么好处吗?有没有办法解决我的问题?
提前致谢!