2017-06-08 17 views
0

私は、RadGroupを持つapache-wicket-7のページを持っています。私は、バックエンドページクラスのメソッドをajaxで呼び出す必要があります。これを行うには、私が追加:Wicket.Ajax:要素がDOM内にないため、要素 "radioGroup1d"のイベント "click"のリスナーをバインドできません

AjaxFormChoiceComponentUpdatingBehavior 

コード:

this.listInput = new RadioGroup<T>("radioGroup", this.model); 
     this.listInput.add(new AjaxFormChoiceComponentUpdatingBehavior() { 

      private static final long serialVersionUID = 1L; 

      @Override 
      protected void onUpdate(AjaxRequestTarget arg0) { 
       System.out.println("The selected value is " + getComponent().getDefaultModelObjectAsString()); 
      } 
     }); 

それはまた、非同期的にレンダリングされるように、コンポーネントのRADIOGROUPは、以前のAJAX呼び出しの後に見えるようになります。改札はコンポーネントをレンダリングしようとするとしかし、エラーメッセージが表示されます。

Wicket.Ajax: Cannot bind a listener for event "click" on element "radioGroup1d" because the element is not in the DOM 

の追加:

setOutputMarkupPlaceholderTag(true) 

は何もしません。 これはどのように修正できますか?

よろしく、 はMateusz

答えて

2

を使用すると、HTMLテンプレートでそれを<wicket:cotainer>を使用していないことを確認してください。それらはレンダリングされません。

+0

実際には、 'があります。私はそれが既に提供されているコンポーネントなので、私はそれを変更することはできません申し訳ありません。とにかくアドバイスをいただきありがとうございます。 –

関連する問題