Синтаксическая проблема руля с JSON из Trello API

Борьба с моим синтаксисом Handlebars для данных JSON при возврате из оболочки Trello.Net для API Trello. Я делаю поиск карт для какой-то строки, которая возвращает карты. Эта часть работает хорошо. Однако, оборачивая мой HTML-код Handlebars с помощью {{#each}}, выдается ошибка "n is undefined" в основном файле handlebars.

Вот мой JSON:

"[ 
    { "Id": "519a423c4bedcac656000a84", 
      "Name": "sdvsdv", 
      "Desc": "**Submitted by me**\r\n\r\nsdvsdvsdvsdv", 
      "Other keys": "Other values",
 }, 
    { "Id": "519a423c4bedcac656000a84", 
      "Name": "sdvsdv", 
      "Desc": "**Submitted by me**\r\n\r\nsdvsdvsdvsdv", 
      "Other keys": "Other values",
 }.. and so on 
]"

Вот мой (урезанный) шаблон Handlebars:

 <script id="resultsTemplate" type="text/x-handlebars-template">
    {{#each}}
    <div class="result {{Id}}">
        <h3>{{Name}}</h3>
    </div>
    {{/each}}
</script>

и мой вызов Ajax:

 $(".search-btn").click(function () {
         var data = 'David Orriell';
         $.ajax({
             type: "POST",
             url: "SearchYourCards.aspx/GetCards",
             data: "{'data': '" + data + "'}",
             contentType: "application/json; charset=utf-8",
             dataType: "json",
             success: function (msg) {
                 var res = $.parseJSON(msg.d);
                 var source = $('#resultsTemplate').html();
                 var template = Handlebars.compile(source);
                 var context = res;
                 $('#results').html(template(context));
                 //$('#results').accordion({ header: ".result h3" });
             }
         });
     });

Мой HTML-шаблон всегда пуст. Есть идеи?

Спасибо бретт

1 ответ

Решение

Вы должны проверить вашу консоль ошибок. Тогда ты должен сказать {{#each}} что вы хотите повторить:

{{#each this}}
    <!-- ... -->
{{/each}}

Демо: http://jsfiddle.net/ambiguous/vcQdf/

Другие вопросы по тегам