logo image
AddThis Social Bookmark Button

Visualisation d'une page Webjax

Ajax options (argument)
icone addfav
La puissance de l'objet Ajax de la librairie Prototype réside en grande part dans la quantité impressionnante d'arguments que l'on peut définir lors de requêtes Ajax (ndr : dans Ajax.Request, Ajax.Updater, Ajax.PeriodicalUpdater).
Ces arguments sont stockés au sein d'un objet qu'il conviendra d'après l'usage qui est fait de Prototype de nommer 'options'.

Cet objet 'options' n'est pas une classe et peut avoir une taille variable selon l'usage que l'on souhaite faire des requêtes Ajax.
N'importe quel objet peut être passé lors de l'appel du moment que les propriétés précisées correspondent à l'une de celles précisées dans le tableau ci après.

Propriété Type Défaut Description
method String 'post' Méthode de transmission de la requête HTTP.
parameters String '' Chaîne de caractères dit 'url-formated'
(soit formaté pour la transmission via
url) contenant des valeurs que l'on
souhaite transmettre dans la requête
HTTP afin d'influer sur le serveur.
asynchronous Boolean true Indique si la l'appel AJAX sera effectué
de manière asynchrone.
postBody String undefined Variables ou contenu à transmettre
dans le cas d'une transmission par
 HTTP_POST (ndr : voir exemple dans
 cette page après le tableau).
requestHeaders Array undefined Liste d'en-têtes HTTP à passer dans
la requête.
La liste doit avoir un nombre pair de
 valeurs.
La base est que, une valeur est le
nom de l'en-tête HTTP à ajouter, la
valeur suivante, la valeur de l'en-tête
dans le contexte de la requête.
L'exemple suivant peut être utilisé
pour mieux comprendre :
['Content-type','application/pdf',
'Dc.Creator','nicoweb']
onXXXXX Function (xmlhttprequest object) undefined Fonction personnalisée qui est
 appeler lorsque l'évènement défini
 par 'XXXXX' se produit.
Exemple : var myOptions = {
 onComplete : voirReponseServeur
 , onLoaded : enregistrerChargement }
Chaque fonction utilisée recevra un
 argument contenant l'objet Ajax
 ayant servi lors de l'appel AJAX.
Un autre argument peut être
 renvoyé mais plus de précisions
 sont nécessaires avant que celui
 soit décrit.
onSuccess Function ( xmlhttprequest object ) undefined Fonction qui sera appellée lorsque
 l'appel Ajax sera terminé avec
 succès.
Comme précisé dans la case
 présentant 'onXXXXX' un objet
 contenant l'objet Ajax utilisé pour
 l'appel sera transmis.
onFailure Function ( xmlhttprequest object ) undefined Fonction qui sera appelée lorsque
l'appel Ajax sera terminé avec des
erreurs durant le processus.
De la même manière que pour
tous les gestionnaires
d'évènements, l'objet Ajax ayant
servi pendant l'appel sera transmis
à la fonction.
onException Function ( ajaxRequest , exception ) undefined Fonction qui sera appelée
lorsqu'une exception sera
identifiée côté client lors de l'appel
Ajax (ndr : réponse invalide,
arguments invalides).
La fonction recevra deux objets, un
correspondant à l'objet Ajax utilisé
pour l'appel, l'autre à l'objet
d'Exception créé.
insertion Insertion Class undefined Classe qui détermine de quelle
façon le nouveau contenu va être
inséré.
Cela peut-être Insertion.Before ,
Insertion.Top , Insertion.After ,
Insertion.Bottom .
S'applique uniquement aux objets
Ajax.Updater .
evalScripts Boolean undefined, 1 Permet de déterminer si du code
javascript retourné dans la
réponse Ajax doit être éxécuté ou
pas.
S'applique uniquement aux objets
Ajax.Updater .
decay Number undefined, 1 Permet de fixer un ralentissement
dans l'éxécution d'un Ajax.PeriodicalUpdater
lorsque la réponse reçue est la
même que la précédente.
Par exemple, si vous utilisez 2,
après qu'un rafraichissement
(ndr : un PeriodicalUpdater) est
produit le même résultat que le
précédent, l'objet attendra deux
fois plus de temps avant le
prochain rafraichissement.
Si cela se reproduit la fois d'après,
l'objet attendra quatre fois plus
de
temps etc etc
Vous pouvez laisser la valeur par
défaut ou précisé 1 pour empêcher le
ralentissement du
rafraichissement identique.
frequency Number undefined, 2 Interval (en secondes) entre les
rafraichissements.
S'applique uniquement aux
Ajax.PeriodicalUpdater .


Exemple d'utilisation de 'method' et 'parameters'
L'exemple de code Javascript présenté ci après permet de transmettre une requête AJAX suite à un click bouton.
Le code reprend la valeur du champ de test 'toto président, toto président' et la transmet au serveur.
Le code php se charge de déterminer la méthode de transfert de données et renvoie une simple chaîne de caractères réaffichant la valeur avec l'heure.
Le code Javascript reprend la main et présente la chaîne de caractères reçue via une fenêtre 'alert()'.






Voici présenté ci après le code PHP qui permet de renvoyer la chaîne qui s'affiche lorsque vous cliquez sur le bouton 'tester la requête.'


Exemple d'utilisation de 'evalScripts'
Comme nous avons pu le voir précédemment dans le tableau si vous suivez le cours de cette page, il est possible de demander à un serveur distant de renvoyer du code Javascript afin de l'exécuter sur le poste client et ainsi marquer la fin d'une action, une erreur etc....
L'exemple de code Javascript suivant permet de contacter un serveur de façon simple sans arguments (ndr : contexte d'exemple) et de traiter le retour Javascript du serveur.
Nous remarquons ici l'utilisation de la classe Ajax.Updater afin pouvoir préciser un donner un sens à l'argument 'evalScripts' (ndr : Ajax.Request ne se destine pas forcément à la mise à jour d'éléments de l'interface).

zone de retour de la requête


Vous pouvez prendre connaissance ci après du code PHP nécessaire pour provoquer l'affichage d'une fenêtre 'alert()' Javascript de façon automatique suite à l'utilisation de Ajax.Updater.

ico com Aucun commentaire enregistré