我正在使用jquery模板和json构建Web内容,我正在寻找一种干净的(呃)方法来获取与使用这些模板构建的内容上的click事件相关联的json数据。存储的tmplItem()。数据是该模板的对象数组。单击该列表中的项目时,我只想将该项目的json数据传递给click事件处理程序。
目前我正在这样做:
<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);
});
这有效,但看起来有点笨重。有没有一种方法不依赖于使用id选择器?