Maison  >  Article  >  interface Web  >  Comment transmettre des paramètres à p:remoteCommand depuis JavaScript dans PrimeFaces ?

Comment transmettre des paramètres à p:remoteCommand depuis JavaScript dans PrimeFaces ?

DDD
DDDoriginal
2024-10-25 04:07:20566parcourir

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

Passer des paramètres à p:remoteCommand à partir de JavaScript

Dans ce scénario, vous cherchez à transmettre des valeurs à votre p:remoteCommand à partir de JavaScript. Voici comment cela peut être réalisé, en fonction de votre version de PrimeFaces :

PrimeFaces 3.3 et plus récent

Depuis la version 3.3, la syntaxe a évolué. Conformément au guide de l'utilisateur de PrimeFaces, voici comment transmettre les paramètres :

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

Dans le backing bean, accédez à ces paramètres via l'annotation @ManagedProperty :

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

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

PrimeFaces 3.2 et versions antérieures

Avant la version 3.3, la syntaxe était différente :

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

La récupération de ces paramètres dans le backing bean reste la même que celle décrite ci-dessus.

Notes supplémentaires

Vous pouvez également récupérer des paramètres à l'aide de FacesContext dans un bean de portée plus large :

<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>

Pour transmettre plusieurs valeurs à un seul paramètre, utilisez la syntaxe suivante :

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

Accédez à ces valeurs dans le backing bean à l'aide de @ManagedProperty ou FacesContext :

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

Ressources associées

  • [Injection de dépendances des paramètres de requête avec CDI et JSF2](https://stackoverflow.com /questions/16025098/dependency-inject-request-parameter-with-cdi-and-jsf2)
  • [Invocation d'un événement de bean géré JSF avec JavaScript natif](https://stackoverflow.com/questions/7120603 /comment-invoquer-un-bean-géré-jsf-sur-un-événement-html-dom-en utilisant-native-javascript)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn