You need to sign in to do that
Don't have an account?

outputPanelのrendered属性について
お世話になっております。
Visualforce上で画面の切り替えを行いたいと思っており、outputPanelのrendered属性を
使おうと思っています。
【Visualforce】
<apex:commandButton reRender="page1,page2" value="検索"/>
<br/><br/>
<apex:outputPanel id="page1" rendered="{!IF(bool != 0,true,false)}">
<apex:pageBlock title="1">
~省略~
</apex:pageBlock>
</apex:outputPanel>
<apex:outputPanel id="page2" rendered="{!IF(bool == 0,true,false)}">
<apex:pageBlock title="2">
~省略~
</apex:pageBlock>
</apex:outputPanel>
【コントローラ】
public Integer getBool(){
Integer num = [select count() from Contract where Name like :'%' + 検索したい文字列+ '%'];
if ( num == 0 ){
return 0;
}else{
return 1;
}
}
コントローラの戻り値が0であれば、page2を表示したいと思っており、
1であれば、page1を表示させたいです。
ところが、ボタンを押してもpage2だけしか表示されません。
どのように修正すればいいのかご教授頂けると幸いです。
宜しくお願いいたします。
経験上、reRenderされるoutputPanel はrendered属性を指定できないようです。
下記のようにpanelを分けてみては如何でしょうか?
All Answers
経験上、reRenderされるoutputPanel はrendered属性を指定できないようです。
下記のようにpanelを分けてみては如何でしょうか?
返信が遅くなり、申し訳ありません。
OutputPanelを2重に使用するんですね。
とても勉強になりました!!
ありがとうございました!!!