如何动态添加输入字段[重复]
Posted
技术标签:
【中文标题】如何动态添加输入字段[重复]【英文标题】:How to dynamically add an input field [duplicate] 【发布时间】:2013-05-31 17:23:09 【问题描述】:我想添加动态输入字段。喜欢
PF
有没有好的组件说明如何添加这样的组件?
请给我一个关于你将如何开发它的提示,因为我目前不知道。
非常感谢您的回答。
我的技术栈:
休眠:4.0.1.Final 春季:3.1.1.RELEASE Primefaces:3.5 jsf 版本:2.2.0-m08 PrimefacesMobile 版本:0.9.3 Apache Tomcat/7.0.12【问题讨论】:
再一次,您尝试过什么?显示代码而不仅仅是图像。此外,您的技术堆栈不会帮助我们为您提供正确的方向。 @maximus 这是纯 JSF 2.0 ***.com/a/16762538/354831 中的一个示例,可以根据您的需要进行修改。 @AlexandreLavoie 非常感谢您的出色回答!!! 【参考方案1】:也许下面的代码可以帮助你,恐怕没有一个组件可以解决这个问题(至少据我所知):
HTML
<h:form>
<ui:repeat value=#bean.values
var="value">
<h:inputText value="#value" />
<br />
</ui:repeat>
<h:commandButton value="Extend">
<f:ajax listener="#bean.extend"
process="@form"
render="@form" />
</h:commandButton>
<h:commandButton action="#bean.submit"
value="Save" />
</h:form>
豆
@ManagedBean
@ViewScoped
public class Bean
private List<String> values;
@PostConstruct
public void init()
values = new ArrayList();
values.add("");
public void submit()
// save values in database
public void extend()
values.add("");
public void setValues(List<String> values)
this.values = values;
public List<String> getValues()
return values;
【讨论】:
请参考JSTL in JSF2 Facelets… makes sense?以了解在这种情况下使用<c:forEach>
会出现问题。相反,将其替换为 <ui:repeat>
以避免出现 ajax 渲染/更新问题。否则,请在发布之前测试您的答案。
@LuiggiMendoza 好电话,从由于阶段需要<c:forEach>
的情况开始。在这种情况下,<ui:repeat>
可以正常工作!关于测试,附近没有IDE。
我试过这个,但是当你有一个 List以上是关于如何动态添加输入字段[重复]的主要内容,如果未能解决你的问题,请参考以下文章