AjaxFallbackLink removes content of input fields

classic Classic list List threaded Threaded
1 message Options
yka
Reply | Threaded
Open this post in threaded view
|

AjaxFallbackLink removes content of input fields

yka
Hi all, following code snippets:


                final WebMarkupContainer wmc = new WebMarkupContainer(
                                "invoiceItemsContainer");
                wmc.setOutputMarkupId(true);
                final PropertyListView<InvoiceItem> propertyListView = new PropertyListView<InvoiceItem>(
                                "invoiceItems", invoice.getInvoiceItems()) {
                        @Override
                        public void populateItem(final ListItem<InvoiceItem> listItem) {
                                listItem.add(new TextField<String>("pricePerUnit"));
                        }
                };

                AjaxLink<Void> invoiceItemLink = new AjaxLink<Void>("invoiceItemLink") {

                        @Override
                        public void onClick(AjaxRequestTarget target) {
                                invoice.getInvoiceItems().add(new InvoiceItem());
                                target.add(wmc);
                        }
                };

                add(invoiceItemLink);
                add(wmc);


                <'a href="#" wicket:id="invoiceItemLink" />
                <div wicket:id="invoiceItemsContainer">
                        <div wicket:id = "invoiceItems">
                   <input wicket:id="pricePerUnit">1/1/2004</input>
          </div>
   </div>


I can add items and edit the input field. But each time I add a new item, the value of the previously added items are all flushed. Why is it like that?