Как прикрепить данные к jquery tmpl - PullRequest
5 голосов
/ 03 декабря 2010

Кто-нибудь знает, как прикрепить элемент данных, используемый для визуализации шаблона jQuery, к результирующему объекту dom?

с учетом этого tmpl:

<script id="sectionTemplate" type="text/x-jquery-tmpl">
<div class="story-writer-section sticker ${CssClasses}">
    <div class="title">
    <div class="delete-button sticker-button"/>
        ${SectionName}
    </div>
    <div class="story-writer-story-container">
    </div>
</div>

иthis:

    $("#sectionTemplate")
        .tmpl(sections)
        .appendTo(".story-writer-section-container");

Я хотел бы присоединить каждый раздел к результату через .data ('section', data), чтобы впоследствии я мог получить доступ ко всем данным, потому что не все данные отображаютсянапример, идентификаторы и т. д., которые мне понадобятся позже при выполнении таких действий, как удаление.

Возможно, что-то вроде этого ...

        $("#sectionTemplate")
        .tmpl(sections)
        .appendTo(".story-writer-section-container").each(function (????) { 
                               this.data('section', ?????); 
                          });

Но я понятия не имею, как получитьтекущий элемент данных, используемый для рендеринга этого tmpl.

Perhpas есть способ включить это в сам шаблон?

Любая помощь очень ценится.

1 Ответ

14 голосов
/ 03 декабря 2010

Хорошо, я решил.Похоже, что данные уже добавлены в элемент, сгенерированный .tmpl(), и к ним можно получить доступ так:

$.tmplItem(this).data

Очень хорошо, как обычно, jQuery не разочаровывает.

...