IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Marche à suivre - popup/ajax/récupération & co...


Sujet :

JavaScript

  1. #21
    Invité
    Invité(e)
    Par défaut
    Entre temps, j'ai testé et oui, en ISO, mes accents déconnaient dans la liste géré par l'Ajax.

    Pour gérer le message de validation, je dois le gérer en php au niveau du form avec (dans l'idée) un contrôle genre if isset "go".
    Sauf que au niveau de l'ajax, j'ai une variable que je peux contrôler pour être sûr que l'insertion a bien fonctionné ?
    Sur le "réponse" ? J'ai moyen de le récupérer dans le sens ajax -> php ?

  2. #22
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop,


    Le message de validation de quoi? Si c'est pour valider l'ajout du type dans la bdd, tu peux le faire côté client dans la fonction valider_type().

    Si tu ajoutes les nouvelles options dans ton select, c'est que le processus est arrivé au bout avec succès. C'est dans ce bloc de code que tu dois géré le message et la fermeture du popup:

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    if (reponse.getElementsByTagName("letype")[0].firstChild.nodeValue != "None"){
    	select_type = document.getElementById("select_type");
    	opnum = select_type.length;
    	for (i=opnum-1;i>=1;i--){
    		select_type.options[i] = null;
    	}
    	opnum = reponse.getElementsByTagName("letype").length;
    	offset = 1;
    	for (i=0;i<=opnum-1;i++){
    		letype = reponse.getElementsByTagName("letype")[i].firstChild.nodeValue;
    		alert(letype);
    		select_type.options[offset] = new Option(letype,letype);
    		offset = offset + 1;
    	}	
    }
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  3. #23
    Invité
    Invité(e)
    Par défaut
    Alors il s'agit juste d'un message de validation, exemple : "Votre type a bien été ajouté"

    Car là, on clique et rien ne se passe (enfin visuellement).

    Je pourrais ajouter un alert mais ce message ne s’afficherait par sur le popup mais par-dessus, voilà pourquoi je pensais/voulais le gérer en php.

    Pour info, j'ai suivi le tuto sur developpez.com pour le popup modale. Pour le fermer, il y a un "Fermer" en haut à droite avec ce code avec un lien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a class="close" href="#noWhere">Fermer</a>
    Du coup, en ajax, il faudrait juste ajouter le #noWhere à l'adresse ...
    De ce que j'ai lu, il faut se servir du hash avec la fonction.. windows.location.hash. Un égal suffirait ? Je continue de chercher ... Facile à lire le hash mais dur à ajouter ...

  4. #24
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop,

    Si tu veux afficher un message, tu peux prévoir un conteneur dans la fenêtre modale (DIV, SPAN, P, ...) et:
    - soit manipuler son innerHtml pour y ajouter un message
    - soit y placer directement le message, mettre le conteneur à "display: none" dans le css et le mettre à "display: block" (ou inline-block) en javascript dans le bloc de code qui ajoute les options dans ton select.
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  5. #25
    Invité
    Invité(e)
    Par défaut
    Alors toujours étape par étape

    J'ai ajouté sur le formulaire du popup un display:block et sur le message un display:none

    Dans mon code JS, j'ai ajouté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    document.getElementById('message').style.display = 'block';
                            document.getElementById('form2').style.display = 'none';
    Ce code fonctionne bien mais y'a un souci ... Si j'ouvre à nouveau le popup car je me suis trompé de type et je veux en ajouter un 2ème, je retombe sur le message et la form a diaspru. Logique puisque je n'ai rien rechargé ...

    Du coup, sur mon lien vers le popup, j'ai ajouté un onclick avec ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function reset() {
      document.getElementById('message').style.display = 'none';
       document.getElementById('form2').style.display = 'block';     
    }
    Est-ce que c'est propre ou c'est de la bidouille et il y a mieux ?

    ça avance !

  6. #26
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop,


    Les puristes diront qu'on pourrait ajouter un noeud texte et un élément dans le DOM...mais les pragmatiques diront que ta façon de faire est logique, et que ça fonctionne.
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  7. #27
    Invité
    Invité(e)
    Par défaut
    Oh les puristes, on les saluent !

    J'ai ajouté cette commande pour la fermeture du popup avec un délai pour lire le message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setTimeout("location.hash = '#noWhere'", 5000);
    Vous validez ?

  8. #28
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop,

    J'allais le dire/l'écrire, un petit timeout avant de fermer la fenêtre...
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  9. #29
    Invité
    Invité(e)
    Par défaut
    Et bah c'est fini

    J'ai comparé le code avec ce tutorial http://siddh.developpez.com/articles/ajax/
    Il est commenté avec beaucoup de commande en commun...
    La partie du "vidage" du select pour réinsérer des données me demandera plus de temps pour être réellement compris !

    En tout cas, un grand merci pour l'aide !

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 7
    Dernier message: 14/01/2011, 14h00
  2. Travailler à distance : marche à suivre?
    Par PunxMoi dans le forum EDI et Outils pour Java
    Réponses: 2
    Dernier message: 05/05/2008, 22h25
  3. [AJAX] La propriété style ne marche pas avec Ajax
    Par skyangel20 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 31/10/2007, 13h56
  4. [AJAX] conflit Flash/popup Ajax
    Par jersey_girl dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/06/2007, 09h33
  5. [Oracle 9i] Marche à suivre pour installer un Patch
    Par zestrellita dans le forum Oracle
    Réponses: 2
    Dernier message: 03/11/2005, 15h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo