Welcome, Guest
Username: Password: Remember me

TOPIC: Afficher-Masquer des champs en fronted

Afficher-Masquer des champs en fronted 30 Oct 2012 03:38 #4847

  • felichon
  • felichon's Avatar
  • Offline
  • Junior Member
  • Hello world :-)
  • Posts: 39
  • Thank you received: 7
  • Karma: -1
Hello,

Comment fait-on pour afficher ou masquer des champs en fronted en fonction de s'ils sont renseignés ou non ?

Exemple :

Imaginon qu'en backend on ai 3 champs de type string ;

- Champ 1
- Champ 2
- Champ 3

Imaginont à présent qu'en fronted on ai un Layout qui affiche ses 3 champs.

Est-il possible qu'ils ne s'affichent que s'ils sont renseignés ?

Pour reprendre notre exemple ci-dessus, adméton qu'on ai renseigné que le champ 2, comment faire pour que le champ 1 et le champ 3 ne s'affichent pas ?

Peut-on direcetement régler ça dans Cook ou il faut encoder à par le composant avec des If, else, switch, case, break ?

Merci par avance. B)
Check out my extensions for Joomla! eliopro.fr
Last Edit: 30 Oct 2012 03:43 by felichon.
The administrator has disabled public write access.

Re: Afficher-Masquer des champs en fronted 30 Oct 2012 09:04 #4855

  • JoomGuy
  • JoomGuy's Avatar
  • Offline
  • Moderator
  • Joomla Enthusiast, Lover of Cooking
  • Posts: 1115
  • Thank you received: 195
  • Karma: 64
Bonjour,

Pour ce faire, vous aurez besoin d'ajouter un peu de javascript sur ​​mesure - jquery serait plus idéal.

J'ai déjà écrit un post sur ce que, en réponse à une question sur le forum anglais:
www.j-cook.pro/forum/9-coding-inside-you...-front-end-form#4482

Ce cas particulier est fonction de la valeur d'un bouton radio - si elle avait une valeur de 1 alors montrer abother champ, sinon, de le cacher. Il a également caché les champs par défaut, en attendant utilisateur de sélectionner oui ou non (0 ou 1) dans le bouton radio pour choisir les champs à afficher.

Le poste devrait se traduire par OK (je l'espère), et j'espère que ça aide.

Une chose à noter, si les champs que vous désireux de se cacher sont nécessaires, vous devez adapter le script en consultant d'un fil de suite dans le même sujet. C'est parce que, même si les champs sont désactivées, la validation JS attend toujours qu'ils soient là où ils sont nécessaires. Plutôt que de faire le champ désactivé et / ou cachés, vous devez utiliser jQuery pour supprimer la classe «valider» de leur part dans le cas où ils doivent être caché de la forme. Si votre script php est également en attendiez, vous pouvez passer une valeur par défaut en définissant la valeur du champ à quelque chose dans la fonction cache même.

Voici ce poste quand même:
www.j-cook.pro/forum/9-coding-inside-you...-front-end-form#4490

J'espère que c'est utile

Gez
Need help with your Cook/Joomla Project? . PM me to find out what I can help with. NO time wasters please!!!
The administrator has disabled public write access.
The following user(s) said Thank You: admin, felichon

Re: Afficher-Masquer des champs en fronted 31 Oct 2012 17:08 #4869

  • felichon
  • felichon's Avatar
  • Offline
  • Junior Member
  • Hello world :-)
  • Posts: 39
  • Thank you received: 7
  • Karma: -1
Ok, merci audibleid,

J’ai compris le principe, j'ai lu ton post en anglais www.j-cook.pro/forum/9-coding-inside-you...-front-end-form#4482

C'est un peu délicat à faire, mais bon j'ai compris :)

Je voulais te demander encore quelque chose d'autre :

J'ai compris comment faire des composants "complexes" avec les "collections" et les "items", pas de problème j'y arrive.

Par contre, je n'ai pas compris comment faire un composant très "simple", on est obligé de faire une collection ?

J'aimerai faire un composant très simple, il faudrait qu'en backend quand on clic sur le nom du composant on arrive directement dans l'édition dans un seul "item" unique.

Ensuite quand on sauve les modifications il faudrait quitter l'édition et fermer le composant.

C'est à cette étape que je bloque, quand je quitte l'édition, le composant sauve les changement mais reste sur l'édition ! Impossible de quitter cette page, comment faire pour quitter et fermer le composant et revenir dans Joomla! ?

Comment quitter l'édition après avoir sauver ou appuyé sur le bouton "Annuler "?

Mon projet est de faire un composant très simple pour éditer quelques champs qui seront affiché en Fronted.

Inutile pour ça d'avoir des collections entières.

Parallèlement j'ai déjà bien avancé pour un composant beaucoup plus complexe avec 3 tables :)

Merci de ton aide par avance.

Félix.
Check out my extensions for Joomla! eliopro.fr
Last Edit: 31 Oct 2012 17:11 by felichon.
The administrator has disabled public write access.

Re: Afficher-Masquer des champs en fronted 31 Oct 2012 20:05 #4870

  • JoomGuy
  • JoomGuy's Avatar
  • Offline
  • Moderator
  • Joomla Enthusiast, Lover of Cooking
  • Posts: 1115
  • Thank you received: 195
  • Karma: 64
Salut Félix,

Super! Je suis heureux que cela a aidé ... Si vous avez besoin d'aide supplémentaire, s'il vous plaît n'hésitez pas à demander.

En ce qui concerne votre composant simple avec un seul formulaire et aucune page de collection, je crois que la meilleure façon d'y parvenir serait d'ajouter une redirection de sauvegarde de votre contrôleur (ou toute autre tâche) fonction après avoir téléchargé votre composant.

Vous pouvez faire cela en utilisant quelque chose comme;
$ this-> setRedirect (
   JRoute :: _ ('index.php? Option = com_whatever & view = your_view & id = 1', false)
);
Je suppose que vous pourriez même définir un paramètre dans votre composant pour l'utilisateur de spécifier l'url dans le monde. Vous pouvez même remplacer ce sur une base individuelle si nécessaire en ajoutant ce paramètre pour la forme.

Le seul moment où vous ne serait certainement pas à rediriger est de savoir si certaines erreurs se produisent dans la validation php.

Quoi qu'il en soit, j'espère que cela vous aide à atteindre votre objectif.

Cordialement,

Gez
Need help with your Cook/Joomla Project? . PM me to find out what I can help with. NO time wasters please!!!
The administrator has disabled public write access.

Re: Afficher-Masquer des champs en fronted 01 Nov 2012 06:51 #4874

  • felichon
  • felichon's Avatar
  • Offline
  • Junior Member
  • Hello world :-)
  • Posts: 39
  • Thank you received: 7
  • Karma: -1
Hello,

Oui ça m'aide beaucoup, j'apprécie vos efforts pour m'aider à comprendre B)

Je ne s'avait pas qu'on ne pouvais pas régler ce probleme directement dans cook.

Ok, je vais ajouter alors ce code quand je télécharge le composant.

Merci, joyeuse halloween :evil:
Check out my extensions for Joomla! eliopro.fr
The administrator has disabled public write access.
The following user(s) said Thank You: JoomGuy

Re: Afficher-Masquer des champs en fronted 01 Nov 2012 11:26 #4888

  • admin
  • admin's Avatar
  • Offline
  • Administrator
  • Chef
  • Posts: 3711
  • Thank you received: 987
  • Karma: 140
Merci @audibleid.

Concernant la redirection, je conseillerais également d'utiliser le redirecteur de cook car il permet de faire plus de choses :

1. Définir une redirection 'succes', ou 'echec'
2. Définir une redirection en fonction du layout en cours. (car les controlleurs sont unifiés au niveau de la table)

Il suffit de regarder dans les controlleurs pour comprendre comment s'en servir.

Bien à vous.
Coding is now a piece of cake
The administrator has disabled public write access.
The following user(s) said Thank You: JoomGuy

Re: Afficher-Masquer des champs en fronted 01 Nov 2012 12:40 #4894

  • felichon
  • felichon's Avatar
  • Offline
  • Junior Member
  • Hello world :-)
  • Posts: 39
  • Thank you received: 7
  • Karma: -1
Hello admin,

Oui j'avais en effet remarqué qu'on pouvais choisir des options de redirection, mais j'avais pas bien saisi le sens de cette possibilité.

Je ne savais pas qu'on pouvais choisir 'succes' ou 'echec' comme option.

Je vais essayer ça pour voir.

@ +
Check out my extensions for Joomla! eliopro.fr
The administrator has disabled public write access.
Time to create page: 0.089 seconds

Get Started