Insérer une nouvelle ligne dans une datatable
Salut
je rencontre un problème avec l'utilisation d'une datatable dans une page jsf.
j'utilise datatable pour introduire les valeurs d'un produit (par exemple référence, libellé ..ect) et j'ai un bouton qui me permet d'insérer une nouvelle ligne
mais quand je clique sur le bouton une ligne sera ajoutée mais avec le contenu de la ligne précédente ,
en plus si j'ajoute 3 lignes la prochaine fois quand je compile je trouve ces 3 lignes avec leurs contenus
voici mon bean:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
public class MyBean {
private List<Object> myList;
String orderNo;
String productName;
public void setOrderNo(String orderNo){
this.orderNo=orderNo;
}
public void setProductName(String productName){
this.productName=productName;
}
public String getOrderNo()
{
return orderNo;
}
public String getProductName()
{
return productName;
}
public MyBean() {
myList = new ArrayList<Object>();
}
public void addToMyList() {
myList.add(new Object());
}
public List<Object> getMyList() {
return (myList);
}
} |
et dans ma page jsf
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
<h:form>
<h:dataTable value="#{MyBean.myList}"
styleClass="order-table"
headerClass="order-table-header"
rowClasses="order-table-odd-row,order-table-even-row"
>
<h:column>
<f:facet name="header">
<h:outputText value="Order No" />
</f:facet>
<h:inputText value="#{MyBean.orderNo}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Product Name" />
</f:facet>
<h:inputText size="20" value="#{MyBean.productName}" />
</h:column>
</h:dataTable>
<h:commandButton value="Add" actionListener="#{MyBean.addToMyList}" />
</h:form> |
la question num1: comment initialiser ma liste pour que je puisse obtenir un tableau vide (aucune ligne ajoutée)
la question num 2 : comment obtenir une nouvelle ligne vide (rafraichir datatable )
Pourriez vous m'aider s'il vous plait
je vous remercie