2017-06-25 8 views
1

の視認性を切り替える(両方とも同じ容器の下)とIはlinkAがクリックされた場合に、linkAが隠されているとlinkBが表示され、その逆もあるよう、それらの表示を切り替えるたいです。AjaxLinkは、私は2つのAjaxLinkを有する別のAjaxLink

次はlinkAの私の実装です:

linkA= new AjaxLink<Void>("linkA") 
    { 
     @Override 
     public void onConfigure() 
     { 
      setVisible(showLinkA); 
      linkB.setVisible(showLinkB); 
     } 

     @Override 
     public void onClick(AjaxRequestTarget target) 
     { 
      if (condition_met) 
      { 
       setResponsePage(NextPage.class, getParameters()); 
      } 
      else 
      { 
       showLinkB= true; 
       showLinkA= false; 
       target.add(linkA, linkB); 
      } 
     } 
    }; 

linkBがクリックされたときに隠れる部分は、すなわちの作品、linkBが隠されています。ただし、linkAをクリックするとlinkAが表示されず、linkBが表示されなくなります。私は何か不足していますか?

答えて

1

Ajaxを使用し、コンポーネントを非表示にして表示するので、setOutputMarkupPlaceholderTag(true)を使用する必要があります。これがなければ、 "ショー"はそれらを見つけることができず、JSログにエラーがなければなりません。

+0

ありがとうございました! 'setOutputMarkupPlaceholderTag(true)'を追加すると私のために働きます! – xcoder

関連する問題