我网站上显示的无法解释的未定义字符串。不知道如何摆脱它

时间:2015-02-26 05:06:55

标签: javascript mustache

我有一个未定义的字符串显示在我的页面上,我不知道为什么它是他们除了可能导致它的功能,我只知道显示分配控制台错误以找到问题。 我相信当我调用模板时,Mustache正在以某种方式这样做。 enter image description here          “     未定义         “                                                  

问题是我如何摆脱在我的页面中注入的这个未定义的字符串。任何帮助将不胜感激。

代码:在我的div中显示未定义字符串的某种方式或原因被调用的函数

 getProjects: function(){
            portfolio.topOfPage();
            var request1 = $.ajax({
                url: "js/projects.js",
                dataType:'json',
                cache: true,
            }).then(function(response){
                var data = response.projects;
                var template = $('#projects_tmp').html();
                var projects;
                $.each(data, function(key,val){
                    console.log("Key: "+key+", Value: "+val);
                     projects += Mustache.to_html(template, val);
                });
                return projects;
            });

我的小胡子模板:

<script id="projects_tmp" type="text/template">
        <div class='small-6 medium-3 large-2 columns left thumb {{{genre}}}' data-id='{{{id}}}'>
            <div class='project'><figure><img src='{{{largePic}}}' alt='' />
            <figcaption class='caption'><span>{{genre}}</span></figcaption class='caption'></figure></div>
           </div>
        </div>
    </script>

2 个答案:

答案 0 :(得分:2)

问题是你的projects变量应该有一个默认值'',当你执行projects +=时,你的getProjects方法会添加默认值。

答案 1 :(得分:0)

我在上面发布的代码中看到3个</div>和2个<div>。不确定这可能是问题所在。