Journal du Net Développeur >  PHP >  Utiliser Symfony, framework PHP5

Utiliser Symfony, framework PHP5 > 3. Développement JavaScript et Ajax

Précédente En savoir plus... 
[1] : utilisation de link_to_function() :

<?php echo link_to_function("Bouton à cliquer", "alert('Un message !')"); ?>

...donne...

<a href="#" onClick="alert('Un message !');return none;">Bouton à cliquer</a>

[2] : utilisation de form_remote_tag() :
  1. <?php
  2. // ouvrir une balise <form> dynamique
  3. echo form_remote_tag(
  4.   array(
  5.     'update'   => 'objet_lists',
  6.     'url'      => '@objet_acheter',
  7.     )
  8.   );
  9. ?>
  10.   <label for="objet">Objet :</label>
  11.   <?php echo input_tag('objet') ?>
  12.   <?php echo submit_tag('Acheter') ?>
  13. </form>

JavaScript et Ajax
Symfony dispose de ce que l'on appel des helpers, qui sont des assistants pour la création et gestion de modèles PHP et HTML. Symfony propose ainsi des helpers de liaison, de formulaire, de gestion des dates et nombres, de modification textuelle, ou encore de gestion JavaScript. C'est ce dernier qui nous permet de mettre de l'Ajax dans notre code.

Partant de là, le modèle a accès aux fonctions JavaScript, qui produiront le meilleur HTML ou JavaScript possible selon le contexte : javascript_tag() pour simplement ajouter un appel JS, link_to_function() qui crée un lien HTML avec un événement JavaScript, update_element_function() pour modifier le contenu d'un élément HTML... On dispose également de if_javascript et end_if_javascript pour tester les capacités du navigateur.

Ajax est accessible via un jeu supplémentaire de fonctions. Par exemple, remplacer un élément par un contenu dynamique se fait avec la fonction remote_function(), et mettre à jour le contenu d'un formulaire avec les informations serveur utilise form_remote_tag().

Précédente Retour au sommaire Page suivante 
Introduction | Installation | Paramétrage | Développement Ajax | En savoir plus...
 
|
Haut de page
Nos autres sites Société | Mentions légales | Contacts | Publicité | PA Emploi | Presse | Recrutement | Tous nos sites | Données personnelles
© Benchmark Group, 69/71 avenue Pierre Grenier. 92517 Boulogne Billancourt Cedex