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

AJAX Discussion :

[AJAX] JQuery.get, comment ne pas faire le cochon en codant ?


Sujet :

AJAX

  1. #1
    Membre régulier Avatar de tidus_6_9_2
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2008
    Messages : 200
    Points : 116
    Points
    116
    Par défaut [AJAX] JQuery.get, comment ne pas faire le cochon en codant ?
    Bonjour à tous,

    J'utilise la librairie JQuery qui me permet d'envoyer des requêtes AJAX.
    D'où le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $.get(Methode, { donnee: string},
      function(data){
        alert("Data Loaded: " + data);
      });
    que j'aimerais rendre plus dynamique... Ce que je n'arrive pas à faire...

    Je m'explique, dans la fonction javascript je reçois en paramètres les id de tous mes champs de cette manière (id1,id2,id3,etc.)

    Après coup je split le tout dans une boucle pour pouvoir récupérer les données de chaque champ. Le soucis c'est qu'on ne peut faire de boucles dans le bout de code du dessus....(appel de fonction quoi normal).

    Alors je vois pas très bien comment faire le plus propre possible

    J'aimerais le faire de manière propre et dynamique. C'est à dire que normalement on envoit le code de la manière suivante :

    id1 : donnees1, id2 : donnees2

    et je peux très bien faire une concaténation de toutes mes donnes et faire le cochon comme en haut en faisant

    donnee : toutelesdonnees

    j'aimerais éviter ^^

    (Et le bout de code ou je split..... pas très utile mais bon.. IDElements c'est donc toute la chaîne contenant les ID des inputs)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    				var vecteur = IDElements.split(",");
    				var valeur="";
    				var string="";
    				var data="";
    				for (i=0; i<vecteur.length; i++){
      					valeur = document.getElementById(vecteur[i]).value;
      					if (i==0){
        					string = '?='+encodeURIComponent(valeur);
      					}else{
        					string=string+'/'+encodeURIComponent(valeur);
      					}
    				}
    Merci pour vos lumières.

  2. #2
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 56

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut,

    1. Si tu renvoyais tes données au format JSON cela te faciliterait certainement tache pour les boucles, etc...
    2. Après coup je split le tout dans une boucle pour pouvoir récupérer les données de chaque champ. Le soucis c'est qu'on ne peut faire de boucles dans le bout de code du dessus....(appel de fonction quoi normal).
      ?? Je n'ai jamais vu de code qui empêche de faire une boucle


    ERE

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/01/2010, 11h55
  2. Comment ne pas faire afficher "HTTP/1.1 200 OK"?
    Par fumesec dans le forum Apache
    Réponses: 1
    Dernier message: 18/08/2008, 18h42
  3. Comment ne pas faire dépasser un ballon tip d'une page?
    Par patricklinden dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 26/12/2007, 09h05
  4. Réponses: 2
    Dernier message: 16/07/2007, 09h31
  5. Réponses: 6
    Dernier message: 13/09/2006, 19h02

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