>웹 프론트엔드 >JS 튜토리얼 >PrimeFaces의 JavaScript에서 p:remoteCommand에 값을 전달하는 방법은 무엇입니까?

PrimeFaces의 JavaScript에서 p:remoteCommand에 값을 전달하는 방법은 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-10-24 22:02:30571검색

How to Pass Values to p:remoteCommand from JavaScript in PrimeFaces?

JavaScript에서 p:remoteCommand에 매개변수 전달

질문:

PrimeFaces p에 값을 전달할 수 있습니까? :remoteCommand는 어떻게 수행할 수 있나요?

답변:

예, JavaScript에서 p:remoteCommand에 매개변수를 전달할 수 있습니다. 구문과 접근 방식은 PrimeFaces 버전에 따라 다릅니다.

PrimeFaces 3.3 이상

PrimeFaces 3.3 이후 구문은 다음과 같이 변경되었습니다.

<code class="javascript">increment([{name:'x', value:10}, {name:'y', value:20}]);</code>

이를 통해 다음을 전달할 수 있습니다. 매개변수 이름에 대한 여러 값. 단일 값 매개변수는 이전과 같이 계속 액세스할 수 있습니다.

@ManagedProperty("#{param.x}")
private int x;

@ManagedProperty("#{param.y}")
private int y;

PrimeFaces 3.2 이상

PrimeFaces 3.3 이전의 구문은 다음과 같습니다.

<code class="javascript">increment({param1:'val1', param2:'val2'});</code>

지원에서 bean에서 매개변수는 다음을 통해 액세스할 수 있습니다.

@ManagedProperty("#{param.param1}")
private String param1;

@ManagedProperty("#{param.param2}")
private String param2;

다중 값 매개변수

PrimeFaces 3.3 이상에서는 다음과 같이 여러 값으로 매개변수를 지정할 수 있습니다.

<code class="javascript">functionName([{name:'foo', value:'one'}, {name:'foo', value:'two'}, {name:'foo', value:'three'}]);</code>

이러한 매개변수는 요청 범위 Bean에서 액세스할 수 있습니다.

@ManagedProperty("#{paramValues.foo}")
private String[] foos;

또는 더 넓은 범위의 Bean 메서드에서:

<code class="java">Map<String, String[]> paramValues = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterValuesMap();
String[] foos = paramValues.get("foo");</code>

추가 리소스:

  • [CDI 및 JSF2를 사용한 종속성 주입 요청 매개변수](https://stackoverflow.com/questions/7941333/dependent-inject-request-parameter-with-cdi-and-jsf2)
  • [네이티브 JavaScript를 사용하여 HTML DOM 이벤트에서 JSF 관리 Bean을 호출하는 방법은 무엇입니까?](https://stackoverflow.com/questions/9169658/how-to-invoke-a-jsf-managed-bean -on-a-html-dom-event-using-native-javascript)

위 내용은 PrimeFaces의 JavaScript에서 p:remoteCommand에 값을 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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