Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > JavaScript > Bibliothèques & Frameworks > Mootools
Mootools Forum d'entraide sur le framework MooTools. Avant de poster : Tutoriels Mootools, FAQ MooTools, Toutes les FAQ JavaScript
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 13/05/2008, 12h20   #1
Invité de passage
 
Développeur informatique
Inscription : mai 2008
Messages : 4
Détails du profil
Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mai 2008
Messages : 4
Points : 1
Points : 1
Par défaut [Mootools] Probleme lien ajax

Bonjour , je suis nouveau sur ce forum et apres avoir cherché sur le net sans reponse je demande votre aide.

J'utilise le Zend Framework pour developper un site web, tout fonctionne normalement lorsqu'il n'y a pas d'ajax. J'utilise la bibliotheque Mootools pour l'ajax.

Quand je met l'ajax , le principe que je fais c'est de rajouter un parametre "ajax" a la suite des liens concernés (pages que je desire afficher dans une div) et je me sert de ce parametre dans mon controleur et dans mes vues pour eviter les affichages en trop (bannieres ...).

Voila mon probleme :lorsque je clique sur un premier lien de suppression d'un item , la page de confirmation est correctement affichée dans la div prevue mais lorsque je clique sur "oui" , normalement la page "supprimer" ( qui contient juste le message 'correctement suppr') ne s'affiche pas.

La source du probleme est que lorsque je charge ma div avec la confirmation , je recupere les liens (jusque la ca va) et j'y rajoute "ajax/true" et a ce moment la , le JS perd l'ancien lien et je comprend pas pourquoi.

voici le code du changement de lien :
Code :
1
2
3
4
5
 
var temp = '/ajax/true';
var lien = $$('a.oui');
var nl = lien.href + temp;
lien.setProperty('href',nl);
Si quelqu'un pouvait m'aider ca serait vraiment cool .
Merci d'avance.
+
issimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/05/2008, 11h45   #2
Responsable Modération
 
Homme
Inscription : janvier 2007
Messages : 9 316
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2007
Messages : 9 316
Points : 15 522
Points : 15 522
Bonjour,
Code :
1
2
3
4
var temp = '/ajax/true';
var lien = $$('a.oui');
var nl = lien.href + temp;
lien.href = nl;
ne fonctionne pas non plus ?

Sinon
Code :
1
2
3
var temp = '/ajax/true';
var lien = $$('a.oui');
alert(lien.href);
t'affiches bien l'url attendue (l'ancienne) ?

A+
E.Bzz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 13h50   #3
Invité de passage
 
Développeur informatique
Inscription : mai 2008
Messages : 4
Détails du profil
Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mai 2008
Messages : 4
Points : 1
Points : 1
Bonjour E.Bzz
j'ai essayé avec les methodes que tu m'a donné mais elles ne fonctionnent pas :

->en faisant "lien.href = nl" rien ne se passe, le lien n'est pas modifié.

->en faisant "alert(nl)" , j'obtiens toujours le meme probleme, il me renvoit 'undefined/ajax/true'
si je fait un alert(lien.href) , avant toute manipulation, j'ai 'undefined' , donc je ne comprend pas pourquoi il n'arrive pas a recuperer le lien ...

Si quelqu'un a des idées je prend parce que la je commence a avoir fait le tour ...
+
issimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 13h57   #4
Responsable Modération
 
Homme
Inscription : janvier 2007
Messages : 9 316
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2007
Messages : 9 316
Points : 15 522
Points : 15 522
Alors la référence à l'objet initial (a.oui) n'est pas correcte.
On peut voir le code html correspondant à
Code :
var lien = $$('a.oui');
?

A+
E.Bzz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 14h49   #5
Invité de passage
 
Développeur informatique
Inscription : mai 2008
Messages : 4
Détails du profil
Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mai 2008
Messages : 4
Points : 1
Points : 1
Voila le code html qui correspond : c'est dans une page de confirmation avec juste un message "etes vous sur ?"

Code :
1
2
 
<a href="<?php echo $this->baseUrl().$this->action.$this->id;?>" class="oui">Oui</a>
et voici ce qu'il y a dans mon controleur pour cette page :

Code :
1
2
3
4
5
6
 
$id = $this->_request->getParam('id');
$this->view->id = $id;
 
$this->view->message = "&Ecirc;tes vous sur de vouloir supprimer ce message ?";
$this->view->action = "/utilisateur/supprimermessage/idmessage/";
lorsqu'il n'y a pas de ajax , la pages s'affiche correctement et les liens sont nikel ...
issimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 15h07   #6
Responsable Modération
 
Homme
Inscription : janvier 2007
Messages : 9 316
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2007
Messages : 9 316
Points : 15 522
Points : 15 522
A priori $$() doit retourner un tableau (car tu peux avoir plusieurs éléments <a> de class="oui").
=> As-tu essayé
Code :
var lien = $$('a.oui')[0];
?

A+
E.Bzz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 15h10   #7
Responsable Modération
 
Homme
Inscription : janvier 2007
Messages : 9 316
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Secteur : Finance

Informations forums :
Inscription : janvier 2007
Messages : 9 316
Points : 15 522
Points : 15 522
... et de toutes façons, n'utilise pas setProperty : problème de compatibilité entre nav.

A+
E.Bzz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 15h12   #8
Invité de passage
 
Développeur informatique
Inscription : mai 2008
Messages : 4
Détails du profil
Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mai 2008
Messages : 4
Points : 1
Points : 1
C'est bon je viens de trouver en meme temps , merci E.Bzz , tu m'a mis sur la bonne voie avec le "$$(a.oui)" en effet , je recuperais un tableau auquel j'essayais d'acceder directement . J'ai chagné ca et maintenant tout marche.
Merci beaucoup .
A +
issimi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h57.


 
 
 
 
Partenaires

Hébergement Web