Heim  >  Artikel  >  Web-Frontend  >  Wie übergebe ich Parameter aus JavaScript in PrimeFaces an p:remoteCommand?

Wie übergebe ich Parameter aus JavaScript in PrimeFaces an p:remoteCommand?

DDD
DDDOriginal
2024-10-25 04:07:20561Durchsuche

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

Übergabe von Parametern an p:remoteCommand aus JavaScript

In diesem Szenario möchten Sie Werte aus JavaScript an Ihren p:remoteCommand übergeben. Abhängig von Ihrer PrimeFaces-Version können Sie dies wie folgt erreichen:

PrimeFaces 3.3 und neuer

Seit Version 3.3 hat sich die Syntax weiterentwickelt. Gemäß dem PrimeFaces-Benutzerhandbuch erfahren Sie hier, wie Sie Parameter übergeben:

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

Greifen Sie im Backing-Bean über die Annotation @ManagedProperty auf diese Parameter zu:

<code class="java">@ManagedProperty("#{param.x}")
private int x;

@ManagedProperty("#{param.y}")
private int y;</code>

PrimeFaces 3.2 und älter

Vor Version 3.3 war die Syntax anders:

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

Der Abruf dieser Parameter im Backing Bean bleibt derselbe wie oben beschrieben.

Zusätzliche Hinweise

Alternativ können Sie Parameter mithilfe von FacesContext in einer Bean mit größerem Gültigkeitsbereich abrufen:

<code class="java">Map<String, String> params = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap();
int x = Integer.valueOf(params.get("x"));
int y = Integer.valueOf(params.get("y"));</code>

Um mehrere Werte an einen einzelnen Parameter zu übergeben, verwenden Sie die folgende Syntax:

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

Greifen Sie auf diese zu Werte in der Backing-Bean mit @ManagedProperty oder FacesContext:

<code class="java">@ManagedProperty("#{paramValues.foo}")
private String[] foos;</code>

Verwandte Ressourcen

  • [Abhängigkeitsinjektion von Anforderungsparametern mit CDI und JSF2](https://stackoverflow.com /questions/16025098/dependency-inject-request-parameter-with-cdi-and-jsf2)
  • [Aufrufen eines JSF-verwalteten Bean-Ereignisses mit nativem JavaScript](https://stackoverflow.com/questions/7120603 /how-to-invoke-a-jsf-managed-bean-on-a-html-dom-event-using-native-javascript)

Das obige ist der detaillierte Inhalt vonWie übergebe ich Parameter aus JavaScript in PrimeFaces an p:remoteCommand?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn