>웹 프론트엔드 >JS 튜토리얼 >JavaScript를 사용하여 HTML DOM 이벤트에서 JSF 관리 Bean을 어떻게 호출할 수 있습니까?

JavaScript를 사용하여 HTML DOM 이벤트에서 JSF 관리 Bean을 어떻게 호출할 수 있습니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-05 14:09:11878검색

How Can I Call JSF Managed Beans from HTML DOM Events Using JavaScript?

기본 JavaScript를 사용하여 HTML DOM 이벤트에서 JSF 관리 Bean 호출

JSF에서 생성된 JavaScript를 사용하면 jQuery와 유사한 HTML DOM 이벤트에 대한 응답으로 관리 Bean 작업을 실행할 수 있습니다. document.ready 이벤트.

Managed Bean 호출 옵션 조치:

1. h:commandScript(JSF 2.3 )

<h:form>
    <h:commandScript name="commandName" action="#{bean.action}" render=":results" />
</h:form>

<h:panelGroup>

JavaScript 호출:

commandName(); // Invoke the action method

2. p:remoteCommand(PrimeFaces)

<h:form>
    <p:remoteCommand name="commandName" action="#{bean.action}" update=":results" />
</h:form>

<h:panelGroup>

JavaScript 호출:

commandName(); // Invoke the action method

3. o:commandScript(OmniFaces - 이전 JSF 버전에서 사용 가능)**

h:commandScript 예제에서 h:를 o:로 바꿉니다.

4. 숨겨진 형식 트릭

<h:form>

JavaScript 호출:

document.getElementById("form:button").onclick(); // Trigger the button click

5. 사용자 정의 UIComponent

UICommand를 확장하고 사용자 정의 구성 요소에서 jsf.ajax.request() 호출을 생성합니다.

DOM 이벤트 호출:

호출하려면 DOM 로드 시 관리되는 Bean 작업을 수행하려면 JS를 사용하여 클라이언트 측에서 이벤트를 트리거합니다. 예를 들어, h:commandScript 메소드를 사용하면:

$(function () {
    commandName();
});

숨겨진 양식 트릭을 사용하여 target="body":

<h:outputScript target="body">
    document.getElementById("form:button").onclick();
</h:outputScript>
를 사용하여 h:outputScript 내에 JavaScript 호출을 배치합니다.

위 내용은 JavaScript를 사용하여 HTML DOM 이벤트에서 JSF 관리 Bean을 어떻게 호출할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.