2013-06-20 3 views
0

양식 제출 후 보빈에서 primefaces 명령 단추의 업데이트 특성을 변경하는 방법을 찾고 있습니다. 무엇을 달성하기 위해 노력하고 구성 요소 ID를 기반으로 백킹 메서드에서 결과를 기반으로 업데이트 할 수 있습니다.프라임 스 페이스에서 업데이트 속성 다이내믹 변경

예를 들어, 유효성 검사 오류가 아닌 뒷받침 빈에서 일부 오류가 발생하면 명령 단추를 사용하여 양식과 사면 메시지를 업데이트하려고하는데, 나는 사지와 메시지 만 업데이트하면됩니다. 업데이트해서는 안됩니다.

<p:commandButton value="Finish Editing" 
     action="#{editBean.finish}" icon="ui-icon-check" 
     style="width:200px;margin-left:60px;" update=":studentEditForm :messageForm:applyMessages" /> 

답변

3

RequestContext#update()을 통해 프로그래밍 방식 API를 사용할 수 있습니다.

public void finish() { 
    // ... 

    if (someCondition) { 
     RequestContext.getCurrentInstance().update("someClientId"); 
    } else { 
     RequestContext.getCurrentInstance().update("otherClientId"); 
    } 
}    

명령 단추에서 update 특성을 제거하는 것을 잊지 마십시오.

+0

안녕 BalusC,이 잘 작동했습니다. – Krishna

+0

반갑습니다. – BalusC

-1

변경이

<p:commandButton value="Finish Editing" 
     action="#{editBean.finish}" icon="ui-icon-check" 
     style="width:200px;margin-left:60px;" update=":studentEditForm :messageForm:applyMessages" /> 

<p:commandButton value="Finish Editing" 
     action="#{editBean.finish}" icon="ui-icon-check" 
     style="width:200px;margin-left:60px;" update="#{editBean.updateString}" /> 

에 이제 당신은 필요에 따라 EditBean 클래스에서이 문자열을 업데이트해야합니다.

+0

Hello Makky, 폼이로드 될 때 초기화 된 변수가 무엇이든 업데이트 인수에 해당 값이 유지됩니다. 양식을 제출할 때 내가 뒷받침 빈에서 해당 문자열을 변경하려고 했더라도 commandButton 'update'특성에는 반영되지 않았습니다. – Krishna

+0

관리 대상 범위가 무엇입니까?> – Makky

+0

Downvoters가주의를 기울이 고 있습니다. 그래서 어떤 사람들은 마음에 들지 않습니다. – Makky

관련 문제