2012-07-18 2 views
0

여기 출력 필드에 대한 내 코드입니다. 필드가 비어있을 때 버튼이 렌더링되고, 필드에 값이 있으면 지우기 버튼이 나타나서 필드를 비우고 버튼을 다시 렌더링 할 수 있습니다. 하지만 일단 필드가 지워지면 버튼을 다시 렌더링하도록 관리 할 수 ​​없으며 아무나 수정할 수 있습니까?visualforce 페이지 렌더링 버튼

<apex:pageBlockSectionItem > 
    <apex:outputLabel value="Order:" for="callerorder"/> 
    <apex:outputPanel id="callerorder"> 
    <apex:outputField value="{!newPhoneCallRecord.Order__c}" /> 
    <apex:commandButton value="x" rendered="{!!ISBLANK(newPhoneCallRecord.Order__c)}" rerender="phoneRecordSection"> 
     <apex:param name="orderRMV" value="" assignTo="{!newPhoneCallRecord.Order__c}"/> 
    </apex:commandButton> 
    </apex:outputPanel> 

답변

2

리,

당신이 당신이 아마 활성화/자바 스크립트로 버튼을 비활성화해야 동적 할 점을 감안. onChange 이벤트를 활용하면 필요에 따라 버튼의 가시성을 전환 할 수 있습니다.

즉, <apex:param>을 사용하여 빈 값을 할당하는 것은 상황에 다소 좌우되는 것으로 보입니다. 컨트롤러를 통해이 분야를 취소 할 수있는 더 표준적인 방법은 그래서 같은 컨트롤러에 명확한 방법을 구현하는 것입니다 :

public PageReference ClearOrder() 
{ 
    newPhoneCallRecord.Order__c = ""; 
    return null; 
} 

를 그리고 명령 단추에서이 메서드를 호출하기 :

<apex:outputPanel id="callerorder"> 
    <apex:outputField value="{!newPhoneCallRecord.Order__c}" /> 
    <apex:commandButton value="x" rendered="{!!ISBLANK(newPhoneCallRecord.Order__c)}" rerender="phoneRecordSection" action="{!ClearOrder}"/> 
</apex:outputPanel> 
+0

안녕 레이를 , 우리 둘다 멜버른에 있다는 것을 고려하면, 한잔 사 주실 수 있습니까? –

+0

커뮤니티에 대한 기부로 보상을 받아야합니다. –

+0

안녕하세요. 지역 커뮤니티를보다 적극적으로 소셜로 만들어야합니다. 사용자 그룹 모임에 참석하셨습니까? –

관련 문제