2014-07-26 2 views
1

안녕 내 응용 프로그램에서 나는 현재 주소와 다른 하나의 영구 주소 두 블록 있습니다.p : ajax를 사용하여 PrimeFaces에서 텍스트 필드를 복사하는 방법은 무엇입니까?

현재 주소와 영구 주소가 동일하면 영구 주소 필드에 현재 주소 필드를 복사해야합니다.

내가 여기에 코드를 내 코드를 업데이트 한

<h:outputText value="#{msg['elicense.examinationform.address.presentaddressline1']}" /> 
<p:inputText id="presentaddress1" value="#{personalBean.presentAddressLine1}" label="Present Address Line1" /> 
<p:watermark for="presentaddress1" value="Present Address Line1" id="presentaddressdata1"></p:watermark> 


<h:outputText value="#{msg['elicense.examinationform.address.copy']}" /> 
<p:selectBooleanCheckbox value="#{examinationFormBean.copyAddress}" label="addresscopy" /> 
<p:spacer></p:spacer> 

<h:outputText value="#{msg['elicense.examinationform.address.permanentline1']}" /> 
<p:inputText id="address1" value="#{personalBean.permanentAddressLine1}" label="Permanent Address Line1" /> 

붙어있다. p : ajax를 사용하여 확인란을 선택했을 때 presentAddressLine1 값을 permanentAddressLine1에 복사해야합니다. 제발 도와주세요

+0

지금까지 해보신 것은 무엇입니까? 귀하의 사례에 필요한 코드 만 제공하십시오. 관련없는 코드가 많습니다. –

+0

사용하여 현재 주소 필드를 영구 주소 필드에 복사해야합니다. 사용자가 확인란을 선택하면 현재 주소를 영구 주소로 복사합니다. –

+0

StackOverflow를 처음 접했을 때 주석을 게시하는 대신 코드를 변경하여 질문을 편집 할 수 있습니다. –

답변

1

p:selectBooleanCheckBox 구성 요소를 클릭하면 Ajax 요청을 보내는 문제입니다. 여기 SSCCE 기본적인있어 :

@ManagedBean 
@ViewScoped 
public class Bean implements Serializable { 

    private String address1; 
    private String address2; 
    private boolean copyAdress; 

    public String getAddress1() { 
     return address1; 
    } 

    public String getAddress2() { 
     return address2; 
    } 

    public boolean isCopyAdress() { 
     return copyAdress; 
    } 

    public void listener() { 
     if (copyAdress) { 
      address2 = address1; 
     } else { 
      address2 = ""; 
     } 
    } 

    public void setAddress1(String address1) { 
     this.address1 = address1; 
    } 

    public void setAddress2(String address2) { 
     this.address2 = address2; 
    } 

    public void setCopyAdress(boolean copyAdress) { 
     this.copyAdress = copyAdress; 
    } 

} 
<html xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:h="http://xmlns.jcp.org/jsf/html" 
    xmlns:f="http://xmlns.jcp.org/jsf/core" 
    xmlns:p="http://primefaces.org/ui"> 
<h:head /> 
<h:body> 
    <h:form> 
     <p:inputText value="#{bean.address1}" /> 
     <p:inputText id="add2" value="#{bean.address2}" /> 
     <p:selectBooleanCheckbox value="#{bean.copyAdress}"> 
      <p:ajax listener="#{bean.listener}" update="add2" process="@form" /> 
     </p:selectBooleanCheckbox> 
    </h:form> 
</h:body> 
</html> 

p:ajax 우리가 서버 측에서 호출 할 방법에 리스너를 지정합니다. 우리는 전체 양식을 처리하도록 보냅니다 (즉, 주소의 현재 값은 수신기가 실행되기 전에 설정됩니다). 요청 후 두 번째 주소에 첨부 된 입력이 있어야합니다. 즉, 우리가 원하는 것입니다. 값을에 복사합니다.

+0

Thanks Xtreme Biker. 나는 당신의 코드를 구현했고 잘 작동했다. 다시 고마워요 –

+0

@ChandanSarma 당신은. 당신이 새로운 사람인 것처럼, 왼쪽에있는 체크 표시를 올바르게 누른 것으로 대답을 표시하고/또는 그것이 유용하다고 생각하면 업 그레 이드 할 수 있습니다. 문안 인사 –

관련 문제