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

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

Linda Hamilton
Linda HamiltonOriginal
2024-10-24 22:02:30453Durchsuche

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

Übergabe von Parametern an p:remoteCommand aus JavaScript

Frage:

Ist es möglich, Werte an ein PrimeFaces p zu übergeben? :remoteCommand aus JavaScript und wie geht das?

Antwort:

Ja, es ist möglich, Parameter aus JavaScript an einen p:remoteCommand zu übergeben. Die Syntax und Vorgehensweise hängen von der PrimeFaces-Version ab:

PrimeFaces 3.3 oder neuer

Seit PrimeFaces 3.3 hat sich die Syntax wie folgt geändert:

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

Dies ermöglicht die Übergabe mehrere Werte für einen Parameternamen. Auf einwertige Parameter kann weiterhin wie bisher zugegriffen werden:

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

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

PrimeFaces 3.2 oder älter

Vor PrimeFaces 3.3 lautete die Syntax:

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

Im Hintergrund Bean, auf Parameter kann zugegriffen werden über:

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

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

Mehrwertige Parameter

In PrimeFaces 3.3 oder neuer ist es möglich, Parameter mit mehreren Werten anzugeben, wie in:

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

Auf diese Parameter kann in einer Bean mit Anforderungsbereich zugegriffen werden:

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

Oder in einer Methode einer Bean mit breiterem Gültigkeitsbereich:

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

Zusätzliche Ressourcen:

  • [Dependency Inject Request Parameter with CDI and JSF2](https://stackoverflow.com/questions/7941333/dependency-inject-request-parameter-with-cdi-and-jsf2)
  • [Wie rufe ich eine JSF-verwaltete Bean für ein HTML-DOM-Ereignis mit nativem JavaScript auf?](https://stackoverflow.com/questions/9169658/how-to-invoke-a-jsf-managed-bean -on-a-html-dom-event-using-native-javascript)

Das obige ist der detaillierte Inhalt vonWie übergebe ich Werte 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