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 :

$.get() Template externe [AJAX]


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Décembre 2013
    Messages : 7
    Par défaut $.get() Template externe
    Bonjour a tous !

    Voila je suis confronté a un gros soucie depuis 1 semaine. Dans le cadre de mes étude je dois faire un blog entièrement en AJAX, je ne suis pas une fléche en langage web, et je commence a peine le JS et le jquery.
    J'ai quelque consignes pour réaliser ce travail :
    - Pour les data les stocker en JSon
    - Avoir des fichiers Json Externe
    - Avoir des Template Externe

    la marche a suivre m'apparaissait donc clair : faire un get du Template et un getJSON utiliser mustache pour Afficher le résultat dans mon DOM.

    je procède donc ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $.getJSON(urldata, function(data)
    {
    ...
    	$.get(urltemplate, function(templ){
    			...
    		});		
    ...
    });
    Pour ce qui est du JSon sa marche par contre impossible de charger le Template et je ne sais absolument pas pourquoi :/ peut être es-ce ma syntaxe ou ma façon de procédé, bref si vous avez la moindre idée ou critique je suis preneur parce que là j'avoue que je désespère ...

    Merci d'avance

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Décembre 2013
    Messages : 7
    Par défaut
    Merci pour cette réponse qui m'a en partie éclaire.
    J'ai bien compris que je peux donc mettre ces balise dans une balise script dans le fichier Html de ma page Index.
    mais je souhaiterai avoir un fichier (HTML j'imagine) par Template.
    et je ne sais absolument pas comment les récupérer. et je n'arrive pas a sortir de ce lien les élément nécessaire pour m'en sortir.

    En éspérant recevoir des informations supplémentaire ^^ !

    merci d'avance

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Si tu souhaites faire 2 appel Ajax pour récupérer le template puis les data il te faut chainer tes appels sur le succes: du premier appel par exemple.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine et Marne (Île de France)

    Informations forums :
    Inscription : Décembre 2013
    Messages : 7
    Par défaut
    Comment sa chaîner ? Ce n'est pas ce que j'ai fait ? Dans le cas si dessus le deuxième appel ne ce fait que si le premier marche nan ?
    Et ducoup comment mettre mon remplace en externe ?

    Merci

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 207
    Par défaut
    Prenons un exemple simple avec les fichiers suivant
    fichier url_json.js
    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
    {
      "forums":[
        {
          "nom":"CSS",
          "adresse":"http://www.developpez.net/forums/f463/webmasters-developpement-web/css/"
        },
        {
          "nom":"HTML",
          "adresse":"http://www.developpez.net/forums/f39/webmasters-developpement-web/html-dhtml-xhtml/"
        },
        {
          "nom":"Javascript",
          "adresse":"http://www.developpez.net/forums/f23/webmasters-developpement-web/javascript/"
        },
        {
          "nom":"Ajax",
          "adresse":"http://www.developpez.net/forums/f458/webmasters-developpement-web/ajax/"
        }
      ]
    }
    fichier url_template.html
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <ul id="forumList">
      {{#forums}}
        <li>
          <a href='{{adresse}}'>{{nom}}</a>
        </li>
      {{/forums}}
    </ul>
    on pourrait avoir un script de la sorte
    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
    $(document).ready(function(){
      // lecture du template
      $.ajax({
        url: 'url_template.html',
        // ! IMPORTANT ! récup. template au format text en non html
        dataType: 'text',
        success: function(template){
          console.log('template : ', template);
          // lecture des données de remplissage
          $.ajax({
            url: 'url_json.js',
            dataType: "json",
            success: function(data){
                console.log('data : ', data);
                // mise en action mustache
                var html = Mustache.render (template, data);
                $('#listeForums').html(html);
            },
            error: function(error){
                console.log('ERREUR : ', error.statusText);
            }
          });
        }
      });
    });
    avec un html minimum
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="listeForums"></div>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Get Client External IP
    Par Erazion dans le forum C#
    Réponses: 1
    Dernier message: 08/03/2013, 12h15
  2. [Template] Unresolved external symbol et Fonction Template
    Par Roger_Rabbit dans le forum Langage
    Réponses: 12
    Dernier message: 17/10/2008, 17h40
  3. get Hibernate Template()
    Par lextaz33 dans le forum Frameworks Web
    Réponses: 15
    Dernier message: 07/07/2008, 11h23
  4. [POO] variables get et script javascript externe
    Par mokadjo dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 12/02/2008, 14h36
  5. [phpBB][2] Blocs et template externe
    Par Fabouney dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 09/10/2006, 11h42

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