Jsf 在p:dataTable中放置包含Textfield的固定行
我想使用DataTable执行以下场景:Jsf 在p:dataTable中放置包含Textfield的固定行,jsf,jsf-2,primefaces,Jsf,Jsf 2,Primefaces,我想使用DataTable执行以下场景: 默认情况下,datatable中只有一行具有 一个InputExtField和一个按钮 一旦用户键入名称并单击 该按钮的名称应添加到数据表中 这一过程将重复多次 1 2 3 有什么办法吗? 以前有人这样做过吗? 请给出你的建议 编辑:上面的图像是在Photoshop中更改的,而不是我代码的精确输出。正如persissf所说,您可以使用标题进行输入 我有你问题的示例代码 @SessionScoped @ManagedBean public cl
- 默认情况下,datatable中只有一行具有 一个InputExtField和一个按钮李>
- 一旦用户键入名称并单击 该按钮的名称应添加到数据表中李>
- 这一过程将重复多次
以前有人这样做过吗?
请给出你的建议
编辑:上面的图像是在Photoshop中更改的,而不是我代码的精确输出。正如persissf所说,您可以使用标题进行输入 我有你问题的示例代码
@SessionScoped
@ManagedBean
public class DataBean implements Serializable{
private static final long serialVersionUID = 1L;
List<String> data;
String name;
public DataBean(){
data=new ArrayList<String>();
}
/**
* @return the data
*/
public List<String> getData() {
return data;
}
/**
* @param data the data to set
*/
public void setData(List<String> data) {
this.data = data;
}
/**
* @return the name
*/
public String getName() {
return name;
}
/**
* @param name the name to set
*/
public void setName(String name) {
this.name = name;
}
public void update(){
data.add(name);
}
}
@SessionScoped
@ManagedBean
公共类数据库实现了可序列化{
私有静态最终长serialVersionUID=1L;
列出数据;
字符串名;
公共数据库(){
数据=新的ArrayList();
}
/**
*@返回数据
*/
公共列表getData(){
返回数据;
}
/**
*@param data要设置的数据
*/
公共无效设置数据(列表数据){
这个数据=数据;
}
/**
*@返回名称
*/
公共字符串getName(){
返回名称;
}
/**
*@param name要设置的名称
*/
公共void集合名(字符串名){
this.name=名称;
}
公共无效更新(){
数据。添加(名称);
}
}
视图:
希望这能回答你的问题。看起来很直截了当。。“你试过什么代码?”法里德:这是我希望的。我的意思是逻辑是直截了当的。你有没有尝试过任何不适合你的代码?如果你只想要一行、一个inputtext和一个按钮,为什么你想要一个Datatable?将其置于datatable之外不是更容易吗?您可以将表标题和输入组件放入两行PanelGrid中,并使用
<h:body>
<h:form prependId="false">
<p:dataTable value="#{dataBean.data}" var="data" id="datatable">
<p:column>
<f:facet name="header">
<h:outputText value="UserNames:" />
<h:inputText value="#{dataBean.name}" />
<p:commandButton value="Submit" action="#{dataBean.update}"
update="@form,datatable">
</p:commandButton>
</f:facet>
<h:outputText value="#{data}" />
</p:column>
</p:dataTable>
</h:form>