Bonjour,
N'ayant trouvé de solution à mon problème, je vais donc vous l'exposer ici avec l’espoir d'obtenir votre aide.
1. Le cas présent
Pour mes développements nécessitant de l'AJAX, j'utilise depuis des années une fonction simple d'utilisation qui jusqu'à présent ne m'a jamais fait défaut.
L'appel de la fonction se fait généralement via un évènement.
Exemple :
Code :
- <div id="liens" class="lien_actif" onclick="makeRequest('ajax/request_user_info.php?user_id=325&action=edit', 'primary_request');" >Cliquez ici</div>
|
Elle contient deux paramètres, l'URL et la zone cible ou sera affiché le résultat.
La fonction se présente de manière classique :
Code :
- function makeRequest(url, cible) {
- var httpRequest = false;
- [...]
- vérification de navigateur et de version
- [...]
- httpRequest.onreadystatechange = function() { alertContents(httpRequest, cible); };
- httpRequest.open('GET', url, true);
- httpRequest.send(null);
- }
- function alertContents(httpRequest, cible) {
- if (httpRequest.readyState == 4) {
- if (httpRequest.status == 200) {
- document.getElementById(cible).innerHTML = httpRequest.responseText ;
- } else {
- alert('Un problème est survenu avec la requête.');
- }
- }
- }
|
J'ai également créé un dérivé pour traiter les requêtes "POST"
Comme dit, tout fonctionne, sauf que...
2. Le problème
J'utilise de plus en plus la librairie JQUERY dans mes sites ainsi que d'autres scripts JS divers. Hors, une fois qu'un contenu est passé à la moulinette AJAX, il ne tien plus compte ni n’exécute ces scripts, je pense notamment à JQUERY UI ou à d'autres scripts intervenants sur des formulaires.
Mais je suis encore un gros Noob en JQUERY, alors...
3. Un début de solution
A force de recherches, j'ai trouvé des explications mais pas de véritable solution. J'ai compris que jquery .ajax permettait entre autre de lancer des scripts en fin de requête [success si je ne m'abuse?].
J'ai trouvé beaucoup, peut être trop, d'infos sur les méthodes, mais nul n'aborde la base qui m’intéresse, à savoir ; Comment recréer ma requête AJAX en JQUERY en gardant une utilisation similaire des paramètres (URL, CIBLE).
J'ai le début
Code :
- $(document).ready( function () {
- $("#liens" ).click( function() {
- $.ajax({
- type: "GET",
- url: "Que je récupère comment?",
- data:"Que je récupère comment?" ,
- success: function(msg){
- if(msg==1) // si la connexion en php a fonctionnée
- {
- $("#madiv" ).html("" ); //<= #madiv est-elle l'équivalent de ma zone cible?
- }
- else
- {
- }
- }
- });
- }
- }
|
Voilà, j'espère avoir posé mon problème aussi compréhensible-ment que possible.
Merci pour votre aide
---------------
http://www.mocpages.com/home.php/7650