2014-11-07 1 views
0

저는 초보자를 처음 사용하기 때문에 초보자 실수를했을 수도 있습니다. 그러나 Google에서 내 대답을 찾을 수 없습니다. 확인란을 클릭 한 후에 숨겨진 패널 쇼를 만들려고하지만 표시되지 않습니다. 다음과 같이primefaces에 대한 가시성 표시 패널 디스플레이

내 HTML은 같습니다

<br></br> Choose one <br></br><br></br> 

<p:selectBooleanCheckbox onclick="$(‘#:testid’).css(‘display’,’visible’);" >     
    </p:selectBooleanCheckbox> 

    <h:outputText value=" click " />  

</h:panelGrid> 

<p:panel id="testid" header="TESTHDR" style="display:none" > 
    <h:panelGrid columns="2" cellpadding="10"> 

    <p:selectBooleanCheckbox value="#{selectBooleanView.mTest}">   
    </p:selectBooleanCheckbox>   

    <h:outputText value=" test " /> 

    </h:panelGrid> 
</p:panel> 
문제는 내가 체크 박스를 클릭 한 후 내 testid를 패널이 표시되지 않는다는 것입니다

. 아마도 체크 박스 액션 리스너를 잘못하고있을 것이지만 솔직히 직접 문제를 볼 수는 없습니다.

답변

0

표시가 CSS에 존재하지 않기 때문에 표시를 표시 할 수있는 표시가 변경되었습니다.

<p:selectBooleanCheckbox onclick="$(‘#:testid’).css(‘display’,’block’);" > 

나는 youre 코드가 잘 작동한다고 생각합니다.

+0

음,'

또는 like selector ID * =를 사용 당신이 그들의 그룹이있는 경우 '당신의-ID') //로 시작하는 것과 일치 ' 패널은 체크 상자를 클릭 한 후 나타나는 방식대로 표시되므로 코드가 제대로 작동한다고 가정합니다. 불행히도, 디스플레이를 변경하면 도움이되지 않습니다. – Drull

0

프라임 페이스는 ASP.NET과 비슷한 ID를 mangles합니다. 양쪽 모두 ID가 페이지 전체에서 고유하도록 ID = "base_container_child_container_your_control_id"와 같은 것을 얻을 수 있습니다.

"해제"하는 방법을 찾아야합니다. 다시 .NET에서 당신은 당신이 서버로부터 얻을 수있는 control.ClientID를가집니다. PF에 대해서는 확실하지 않습니다.

어쨌든 해결책은 name 속성을 추가하고 $ ('input [name = your-id]') // 정확히 'your-id'와 일치하는 것일 것입니다 $ ('input [name^= your- 에서 : "없음 표시"ID는] 스타일 = 제거하지 값 '