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

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

Susan Sarandon
Susan SarandonOriginal
2024-10-24 14:01:31319Durchsuche

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

Übergabe von Parametern an p:remoteCommand aus JavaScript

Die p:remoteCommand-Komponente in PrimeFaces bietet eine bequeme Möglichkeit, serverseitige Aktionen auszuführen JavaScript. Die Übergabe von Parametern an den Remote-Befehl ist möglich und ermöglicht so eine dynamische Datenübertragung zwischen Client und Server.

PrimeFaces 3.3 und neuer

In PrimeFaces 3.3 und neueren Versionen ist die Syntax zur Übergabe von Parametern an p:remoteCommand hat sich geändert. Sie können mehrere Werte für einen einzelnen Parameter mit der folgenden Syntax angeben:

functionName([{name:'x', value:10}, {name:'y', value:20}]);

Im Backing-Bean können Sie über „@ManagedProperty“ oder über Anforderungsparameterzuordnungen auf diese Parameter zugreifen:

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

@ManagedProperty(value = "#{param.y}")
private int y;
<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>

PrimeFaces 3.2 und älter

In PrimeFaces 3.2 und älteren Versionen war die Syntax für die Parameterübergabe wie folgt:

increment({param1:'val1', param2:'val2'});

Im Hintergrund Bean können Sie auf Parameter zugreifen, ähnlich wie für PrimeFaces 3.3 oder neuer beschrieben.

Hinweis für mehrere Werte

Vor PrimeFaces 3.3 war es nicht möglich, mehrere Werte für zu übergeben ein einzelner Parameter. Um diese Einschränkung zu überwinden, können Sie in PrimeFaces 3.3 oder neuer die folgende Syntax verwenden:

functionName([{name:'foo', value:'one'}, {name:'foo', value:'two'}, {name:'foo', value:'three'}]);

In der Backing-Bean können Sie über „@ManagedProperty“ oder über Anforderungsparameterwertzuordnungen auf mehrere Werte für einen Parameter zugreifen :

@ManagedProperty(value = "#{paramValues.foo}")
private String[] foos;
<code class="java">Map<String, String[]> paramValues = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterValuesMap();
String[] foos = paramValues.get("foo");</code>

Das obige ist der detaillierte Inhalt vonWie übergebe ich Parameter aus JavaScript an p:remoteCommand in PrimeFaces?. 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