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

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

DDD
Libérer: 2024-10-25 04:07:20
original
711 Les gens l'ont consulté

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>
Copier après la connexion

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>
Copier après la connexion

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>
Copier après la connexion

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>
Copier après la connexion

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>
Copier après la connexion

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

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

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 de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal