[JsRender/JsViews] DOM incomplet après boucle utilisant un sous-template

Résolu
TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 - 12 août 2012 à 00:59
TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 - 12 août 2012 à 01:28
Bonjour,

J'ai un petit problème avec JsRender/JsViews. En effet, lorsque je fais une boucle avec des sous-templates, rien de ce qui se trouve après la dite boucle n'est affiché. Un exemple étant mieux qu'un long discours, je vous passe une petite page test :
<!doctype html>
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    <title>JsRender/JsViews issue</title>
    <script src="http://code.jquery.com/jquery-1.8.0.min.js" type="text/javascript"></script>
    <script src="http://borismoore.github.com/jsviews/jsrender.js" type="text/javascript"></script>
    <script src="http://borismoore.github.com/jsviews/jquery.observable.js" type="text/javascript"></script>
    <script src="http://borismoore.github.com/jsviews/jquery.views.js" type="text/javascript"></script>
    <script type="text/javascript">
    $(document).ready(function() {
        var data = {
            'lst': [{'name': 'foo'}, {'name': 'bar'}]
        };
        $.templates('subTpl', '<li>{{>name}}</li>');
        $.templates('mainTpl', 'JsRender/JsViews issue
{{for lst tmpl="subTpl"}}Nothing is displayed after the loop.

');
        $.link.mainTpl('#render_area', data);
    });
    </script>
  </head>
  
    


  
</html>

Comme vous pouvez le constater par vous même, le dernier paragraphe du template principal n'existe même pas dans le DOM. Est-ce que j'ai loupé quelque chose ou bien est-ce un bug ?
Je précise que j'ai testé à la fois sous FireFox et Chromium, je ne pense donc pas que ce soit un problème de navigateur.

1 réponse

TychoBrahe Messages postés 1309 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 5 juin 2013 12
12 août 2012 à 01:28
Finalement c'est un ami qui a trouvé la solution... j'ai tout simplement oublié un slash dans mon for :
{{for lst tmpl="subTpl"/}}

J'avais pourtant relu le truc 100 fois, mais bien entendu si on voyais soi même ce genre d'erreur ce serais trop simple. En tout cas, boulet moi !
3
Rejoignez-nous