[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() :
<?php
// ouvrir une balise <form> dynamique
echo form_remote_tag(
array(
'update' => 'objet_lists',
'url' => '@objet_acheter',
)
);
?>
<label for="objet">Objet :</label>
<?php echo input_tag('objet') ?>
<?php echo submit_tag('Acheter') ?>
</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() .
|