Я бы использовал атрибут данных , например:
<script id="item-display-template"> type="text/html">
<li>
<div class="item-display-container">
<p>${SomeData1} .... ${SomeData2} etc....</p>
<a class="edit" href="#" data-id="${Id}">Edit This Item</a>
</div>
</li>
</script>
Затем обработчик .live()
или .delegate()
, например:
$("a.edit").live("click", function() {
var id = $(this).attr("data-id");
//use the id
});
Или .delegate()
:
$("#myUL").delegate("a.edit", "click", function() {
var id = $(this).attr("data-id");
//use the id
});
В качестве примечания: В jQuery 1.4.3 +, выходящем позже на этой неделе, вы можете использовать .data()
, например:
var id = $(this).data("id");
//or:
var id = $.data(this, "id");
Он вернется к атрибуту data-id
, чтобы получить значение, если его нет в его наборе данных.