используя «данные» с JQuery Tempates и «каждый» - PullRequest
1 голос
/ 21 сентября 2011

Я создаю веб-контент с использованием шаблонов jquery и json, и я ищу чистый (er) способ получения данных json, связанных с событием click для контента, созданного с использованием этих шаблонов.Данные tmplItem ()., Которые хранятся, являются массивом объектов для этого шаблона.Когда щелкает элемент в этом списке, я хочу передать только данные json для этого элемента в обработчик события щелчка.

В настоящее время я делаю это:

<script id="ribbonTemplate" type="x-jquery-tmpl">
{{each(i, item) ribbon_data}}
   <img id='${i}' src="${thumbnail_url}" alt="${content_url}"/>
{{/each}}
</script>

и

    $(ribbonDiv).live('click', function(e){

       var clickItem = $(e.target);
       var tmplItem = clickItem.tmplItem();
       var imgId = clickItem.attr('id');
       var jsonBackingData = tmplItem.data['ribbon_data'][imgId];

       clickEvent(jsonBackingData);
    });

Это работает, но кажется немного неуклюжим.Есть ли способ, который не зависит от использования селектора идентификатора?

...