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

Comment transmettre des valeurs à p:remoteCommand depuis JavaScript dans PrimeFaces ?

Linda Hamilton
Libérer: 2024-10-24 22:02:30
original
570 Les gens l'ont consulté

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

Passer des paramètres à p:remoteCommand depuis JavaScript

Question :

Est-il possible de transmettre des valeurs à un PrimeFaces p :remoteCommand depuis JavaScript, et comment cela peut-il être fait ?

Réponse :

Oui, il est possible de transmettre des paramètres à un p:remoteCommand depuis JavaScript. La syntaxe et l'approche dépendent de la version de PrimeFaces :

PrimeFaces 3.3 ou plus récent

Depuis PrimeFaces 3.3, la syntaxe a changé comme suit :

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

Cela permet de passer plusieurs valeurs pour un nom de paramètre. Les paramètres à valeur unique sont toujours accessibles comme avant :

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

@ManagedProperty("#{param.y}")
private int y;
Copier après la connexion

PrimeFaces 3.2 ou versions antérieures

Avant PrimeFaces 3.3, la syntaxe était :

<code class="javascript">increment({param1:'val1', param2:'val2'});</code>
Copier après la connexion

Dans le support bean, les paramètres sont accessibles via :

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

@ManagedProperty("#{param.param2}")
private String param2;
Copier après la connexion

Paramètres à valeurs multiples

Dans PrimeFaces 3.3 ou plus récent, il est possible de spécifier des paramètres avec plusieurs valeurs, comme dans :

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

Ces paramètres sont accessibles dans un bean de portée de requête :

@ManagedProperty("#{paramValues.foo}")
private String[] foos;
Copier après la connexion

Ou dans une méthode d'un bean de portée plus large :

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

Ressources supplémentaires :

  • [Paramètre de demande d'injection de dépendance avec CDI et JSF2](https://stackoverflow.com/questions/7941333/dependency-inject-request-parameter-with-cdi-and-jsf2)
  • [Comment invoquer un bean géré JSF sur un événement HTML DOM en utilisant du JavaScript natif ?](https://stackoverflow.com/questions/9169658/how-to-invoke-a-jsf-managed-bean -sur-un-événement-html-dom-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!

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