问题
HI All,
I am desperately looking for the assistance on adding and removing the fields and rows using JSF. I am using ICE Faces for the rich UI look. The following is my problem:
- I have to add one text box and two buttons (+) and (-) in a row.
- When user clicks on the + button, one new row should be added with the above components.
- When user clicks on the - button, the corresponding row should be removed from the display.
I am able to add the individual components like text box and remove it. But, here my challenging point is to add and remove as a row. How would I remove that specific row (instance) from the UI View Root.
I have tried several times, but till now I could not find a solution. Please suggest me the possible solutions.
Thanks in advance, Krishna
回答1:
Rather use a h:dataTable
(or the IceFaces equivalent ice:dataTable
) which is backed by a List<Data>
contining objects which each represents the data of a single row. On Add just add a new Data
item to the list. On Remove just remove the selected Data
item from the list.
See also:
- How to dynamically add new row to table? - detailed answer to similar question
- Using Datatables - shows step by step how to use datatables in JSF 1.x.
- CRUD datatable using @ViewScoped - simple example of JSF 2.0 CRUD
来源:https://stackoverflow.com/questions/3640635/how-to-dynamically-adding-fields-in-jsf