Maison > interface Web > js tutoriel > le corps du texte

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

Susan Sarandon
Libérer: 2024-10-24 14:01:31
original
310 Les gens l'ont consulté

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

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

Le composant p:remoteCommand dans PrimeFaces fournit un moyen pratique d'exécuter des actions côté serveur à partir de JavaScript. La transmission de paramètres à la commande distante est possible, permettant un transfert dynamique de données entre le client et le serveur.

PrimeFaces 3.3 et plus récent

Dans PrimeFaces 3.3 et versions plus récentes, la syntaxe pour transmettre les paramètres à p:remoteCommand a changé. Vous pouvez spécifier plusieurs valeurs pour un seul paramètre en utilisant la syntaxe suivante :

functionName([{name:'x', value:10}, {name:'y', value:20}]);
Copier après la connexion

Dans le backing bean, vous pouvez accéder à ces paramètres en utilisant "@ManagedProperty" ou via des cartes de paramètres de requête :

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

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

PrimeFaces 3.2 et versions antérieures

Dans PrimeFaces 3.2 et versions antérieures, la syntaxe de transmission des paramètres était la suivante :

increment({param1:'val1', param2:'val2'});
Copier après la connexion

Dans le support bean, vous pouvez accéder aux paramètres de la même manière que décrit pour PrimeFaces 3.3 ou version ultérieure.

Remarque concernant les valeurs multiples

Avant PrimeFaces 3.3, il n'était pas possible de transmettre plusieurs valeurs pour un seul paramètre. Pour surmonter cette limitation, vous pouvez utiliser la syntaxe suivante dans PrimeFaces 3.3 ou version ultérieure :

functionName([{name:'foo', value:'one'}, {name:'foo', value:'two'}, {name:'foo', value:'three'}]);
Copier après la connexion

Dans le bean de sauvegarde, vous pouvez accéder à plusieurs valeurs pour un paramètre en utilisant "@ManagedProperty" ou via des cartes de valeurs de paramètres de requête. :

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

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!

source:php
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!