2013-01-03 57 views
1

我正在創建一個列表視圖與列表的服務。每個定價服務都有一個不同條款的列表,這是一個DropDownChoice。問題在於,當我在下拉列表中選擇各種值時,術語不會更新。這是一個嚮導,因此我正在嘗試使用正確的術語更新嚮導,然後單擊「下一步」(嚮導對象具有包含Term對象的ProductOrder對象)。檢票嚮導下拉modelValue不會更新

感謝, 泰耶

public ServiceSelectionStep(final NewSubscriptionWizard wizard) { 

    final ListView<PricedService> serviceChoiceList = new ListView<PricedService>(
      "serviceList", 
      wizard.getCompanyPriceModel().getPricedServices()) { 

     protected void populateItem(ListItem<PricedService> item) { 
      final PricedService service = item.getModel().getObject(); 
      // Adding labels to the list. 
      addPricedServiceLabels(item, service); 

      DropDownChoice<Term> termsDropDown = new DropDownChoice<Term>(
        "term", 
        new PropertyModel<Term>(wizard.getProductOrder(), "term"), 
        service.getTerms(), 
        new ChoiceRenderer<Term>("description")); 

      item.add(termsDropDown); 
     } 
    }; 
    add(serviceChoiceList); 
} 

回答

0

嘗試針對AjaxFormComponentUpdatingBehavior中的termsDropDown。

termsDropDown.add(new AjaxFormComponentUpdatingBehavior("onchange") { 

      @Override 
      protected void onUpdate(AjaxRequestTarget target) { 

       wizard.getProductOrder().setService(service); 
       System.out.println("Chosen term: " + wizard.getProductOrder().getTerm()); 

       target.addComponent(termsDropDown); 

      } 
     }); 
     item.add(termsDropDown);