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

jQuery Discussion :

Récupérer des données via JavaScript et afficher dans une dataTable


Sujet :

jQuery

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2012
    Messages : 50
    Points : 36
    Points
    36
    Par défaut Récupérer des données via JavaScript et afficher dans une dataTable
    J'ai un web service WCF, et j'aimerais pouvoir afficher les données d'une méthode dans une dataTable depuis un fichier JavaScript.

    Voici ma méthode dans mon web service:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [OperationContract]
        [WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json)]
        ResponseStatistic_1 Statistic_1();
    Voici la classe ResponseStatistic_1.cs

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    public class ResponseStatistic_1 : IBaseClientEntity
    {
        public ResponseStatistic_1()
        {
     
        }
     
        public ResponseStatistic_1(Statistic_1 [] items) : this()
        {
            this.Items = items;
        }
     
        public Statistic_1[] Items
        {
            get;
            set;
        }
    }

    Voici la classe Statistic_1.cs :

    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    public class Statistic_1
    {
        private string _geografisch_zone;
        private decimal[] _sum; 
        private int _yearStart;
        private int _yearEnd;
     
        public Statistic_1()
        {
         ...
        }
     
        public string Geografisch_zone
        {...
        }
     
        public decimal[] Sum
        {
         ...
        }
     
        public int YearStart
        {
         ...
        }
     
        public int YearEnd
        {
         ...
        }
    }

    Et mon code JavaScript :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    function getStatistic1() {
     
    var response;
    var allstat1 = [];
     
    $.ajax({
        type: 'GET',
        url: 'http://localhost:52768/Service1/Statistic_1',
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        success: function (msg) {
         response = msg.d;
         for (var i = 0; i < response.length; i++) {
     
             allstat1[i] =**???**
     
         }
     
             fillData(allstat1);**???**
     
        },
        error: function (e) {
            alert("error loading statistic 1");
        }
    })
    }
     
    function fillData(data) {
     
    $('#table_campaigns').dataTable({
        **???**
    });
    }
    Comment je fais pour récupérer les données de cet objet ResponseStatistic_1?

    Il me met comme erreur que "response is undefined".

    Merci.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    mars 2002
    Messages
    39 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2002
    Messages : 39 504
    Points : 66 348
    Points
    66 348
    Billets dans le blog
    1
    Par défaut
    Pour avoir déja utilisé dataTable, il me semble que dans la doc il est bein spécifié un exemple d'utilisation de données dynamiques ..
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

    réalisations :www.oxygen-translations.fr | www.saftair.fr | www.sistac.fr | www.sebemex.fr | www.extramiante.fr

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2012
    Messages : 50
    Points : 36
    Points
    36
    Par défaut
    Merci d'avoir répondu.

    Et pour récupérer les valeurs dans mon"success", je fais comment?

    Je ne suis pas un expert en javaScript, je récupère quoi exactement dans msg?

    Je fais "response.length" dans ma boucle, mais je suppose qu'il faut faire d'une autre manière car ça me dit "response is undefined"?

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    mars 2002
    Messages
    39 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2002
    Messages : 39 504
    Points : 66 348
    Points
    66 348
    Billets dans le blog
    1
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

    réalisations :www.oxygen-translations.fr | www.saftair.fr | www.sistac.fr | www.sebemex.fr | www.extramiante.fr

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2012
    Messages : 50
    Points : 36
    Points
    36
    Par défaut
    Merci.

    Pour le remplissage de la dataTable j'ai compris, mais j'ai toujours un soucis pour récupérer les valeurs depuis ma méthode web service.

    J'ai regardé votre lien mais je ne comprends vu que je retourne un objet qui contient un array d'objet.

    Auriez-vous une idée?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    mars 2002
    Messages
    39 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : mars 2002
    Messages : 39 504
    Points : 66 348
    Points
    66 348
    Billets dans le blog
    1
    Par défaut
    c'est a toi de formater la réponse de sorte que tu puisse la donner au dataTable ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

    réalisations :www.oxygen-translations.fr | www.saftair.fr | www.sistac.fr | www.sebemex.fr | www.extramiante.fr

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2012
    Messages : 50
    Points : 36
    Points
    36
    Par défaut
    Merci.

    Pour formater ma réponse, je crée tout d'abord un array "allstat1" comme vous pouvez le voir dans mon code javascript.

    Mais pour remplir cette array, dans ma boucle je dois faire quoi pour ajouter ligne par ligne dans mon array?

    J'ai un exemple de code qui fonctionne apperemment

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    success: function(msg){
    			response = msg.d;
    			for(var i=0; i < response.length; i++){
    				allCampaigns[i] = [response[i].name,response[i].subject ,response[i].senderName, response[i].messageName.replace(/%20/g, " "), 
    								   '<a href="#" id="' + response[i].mailingIds[0] + '" onclick="showContactsPopup(' + response[i].mailingIds[0] + ');" >' + response[i].mailingName + '</a>',
    								   response[i].sendStatus, response[i].sendDate];
    			}
    			fillCampaigns(allCampaigns);
    		},
    Moi, il me met une erreur au niveau du "response".

Discussions similaires

  1. Réponses: 0
    Dernier message: 27/10/2011, 12h40
  2. Récupérer données formulaire et les afficher dans une liste à puce
    Par johnny3 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 06/02/2010, 20h38
  3. [MySQL] Récupérer des données mysql et les placer dans un tableau.
    Par argon dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 29/05/2009, 09h00
  4. Récupérer des données via usb
    Par Palca dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 12/01/2006, 14h33
  5. Récupérer des données via le port usb
    Par matmuth dans le forum C++Builder
    Réponses: 12
    Dernier message: 11/05/2005, 16h34

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